首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面是一个Applet程序,其功能是根据公式:y=a*sin(x)绘制正弦曲线。要求窗口中有一个文本区作为曲线峰值a的输入,可以判断输入的数字是否符合要求,一个ok按钮,点击则在画布中绘制曲线,以画布中的横坐标值作为sin()的参数x。请改正程序中的错误(
下面是一个Applet程序,其功能是根据公式:y=a*sin(x)绘制正弦曲线。要求窗口中有一个文本区作为曲线峰值a的输入,可以判断输入的数字是否符合要求,一个ok按钮,点击则在画布中绘制曲线,以画布中的横坐标值作为sin()的参数x。请改正程序中的错误(
admin
2009-01-15
58
问题
下面是一个Applet程序,其功能是根据公式:y=a*sin(x)绘制正弦曲线。要求窗口中有一个文本区作为曲线峰值a的输入,可以判断输入的数字是否符合要求,一个ok按钮,点击则在画布中绘制曲线,以画布中的横坐标值作为sin()的参数x。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
程序运行结果如下:
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
import java.lang.Math.*;
/*
<applet code="ex18_3.class" width=800 height=400 >
</applet>
*/
public class ex18_3 extends Applet implements ActionListener {
Panel pane=new Panel();
drawWnd dw;
Label 11 = new Label("峰值");
TextField tf1 = new TextField(15);
Button btn = new Button("OK");
private float a=0;
public void init(){
pane.setLayout(new FlowLayout(FlowLayout.CENTER,25,5));
pane.add(11);
pane.add(tf1);
pane.add(btn);
btn.addActionListener(this);
add("North",pane);
dw=new drawWnd();
add("South",dw);
}
class drawWnd extends Canvas {
drawWnd() {
setSize(300,100);
setBackground(Color. GRAY);
}
public void paint(Graphics g) {
g.setColor(Color.GREEN);
for(int i=0;i<getSize().width-1;i++){
int y=0;
int y1=y+(int) (Math.sin(i)*a);
int y2=y1+(int) (a*Math.sin(i+1));
g.drawLine(i,y1,i+1,y2);
}
}
}
public void actionPerformed(ActionEvent ae) {
try{
a=Integer.parseInt(tf1.getText());
dw.repaint();
}
catch(NumberFormatException nfe){
tf1.setText("error!");
}
}
}
ex18_3.html
<HTML>
<HEAD>
<TITLE>ex18_3</TITLE>
</HEAD>
<BODY>
<applet code="ex18_3.class" width=800 height=400 >
</applet>
</BODY>
</HTML>
选项
答案
y=getSize().height/2 int y2=y+(int)(a*Math.sin(i+1)) a=Float.parseFloat(tf1.getText())
解析
本题主要考查Applet的图形绘制,Applet的生命周期以及其事件处理机制。解题关键是熟悉Applet窗口中坐标的布局,会使用TextField,Canvas,Button等构件,会使用内部类继承Canvas类,实现在画布中绘制图像的方法,并通过在主程序中结合事件处理机制来调用该方法。本题中,第一处,由于画布中的纵坐标是从上向下从0开始的,因此需要有一个相对坐标原点,这里取画布的一半;第二处,计算下一点的坐标,应该是相对于坐标原点y而言的坐标值,不应该是y1;第三处,a为float类型的变量,因此要用Float类的类型转换方法。
转载请注明原文地址:https://kaotiyun.com/show/wIID777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
1996年至2000年中国国际旅游(外汇)收入年平均多少亿美元?1996年至2000年到中国旅游的外国人人次数是____。
1996年-2000年中国旅游产业概况表
《全国推进依法行政实施纲要》要求,减少行政执法层次,适当下移执法重心。对与人民群众日常生活、生产直接相关的行政执法活动,其主要实施机关是()。
下列叙述正确的是()。
根据《中华人民共和国公务员法》关于公务员义务的规定,下面哪项不属于公务员的义务?()
下列关于能源的叙述,正确的是()。
下列有关需求的表述,不正确的是()。
网络用语从一开始就不是交际语言。文字和语言的性质是不一样的,语言本质上是用声音符号做物质外壳的,文字则是用来记录有声语言的。世界上大多数语言并没有文字,这些语言也就不会有网络用语。文字有记录、保存语言的功能,并能远距离传送,网络主要利用文字来实现即时的远距
一种有关定义对象应该是什么的界定属于
下列程序中,要求计算1+2+3+…+100的值,并显示计算结果。请将程序补充完整。程序运行结果如下:5050publicclassex6_1{publicstaticvoidmain(Stringr
随机试题
好发于儿童的卵巢肿瘤是()
反映、评价相应建造师能力、业绩、水平的根据有()。
社会主义改造基本完成后,中国共产党的中心任务是()。
电子商务的快速发展使原来不易实现的服务贸易成为方便实现的贸易对象,为我国现代服务业发展____了空间。此外,电子商务与其他产业____结合,极大改变了企业生产、经营、销售与组织形态,推动相关产业结构调整与资源优化配置,直接带动产业结构的优化升级。依次填入画
人生不可能是尽善尽美的。我们也很难找到一朵花是完美无缺的。虽然人体总的来说是左右对称的,可是这种对称还不是完全的。每个人左右手的粗细不一样,一只眼睛比另一只眼睛更大或更圆,两个耳垂的形状也不同。最明显,就是每个人只有一个心脏,通常都在靠左的位置。
(2016年真题)下列选项中,属于我国正式法律渊源的是()。
对犯罪客体按照其范围大小可划分为()。(2009年多选21)
Losingajobornotbeingabletofindonealmostalwaysbringsunwelcomechanges.Ifyou’velostajob,thefirstfeelingisof
PassaqeThree(1)High,highabovetheNorthPole,onthefirstdayof1969,twoprofessorsofEnglishliteratureapproach
A、Afraid.B、Excited.C、Curious.D、Indifferent.A短文说,最初,人类和其他动物一样很可能也怕火。A正确。Atfirst引导的语义强调之处出题,四个选项都为表示心理活动的形容词,听到什么选什么。
最新回复
(
0
)