首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面是一个Applet程序,其功能是计算山顶的高度,计算方法是:该山顶由a点量得仰角度数为a,由b点量得仰角度数为b,且测得a,b点之间的距离为c,求山的高度。要求窗口中有3个输入框,分别作为a、b、c的输入,一个按钮单击后进行计算,结果显示在另一个文本框
下面是一个Applet程序,其功能是计算山顶的高度,计算方法是:该山顶由a点量得仰角度数为a,由b点量得仰角度数为b,且测得a,b点之间的距离为c,求山的高度。要求窗口中有3个输入框,分别作为a、b、c的输入,一个按钮单击后进行计算,结果显示在另一个文本框
admin
2009-01-15
44
问题
下面是一个Applet程序,其功能是计算山顶的高度,计算方法是:该山顶由a点量得仰角度数为a,由b点量得仰角度数为b,且测得a,b点之间的距离为c,求山的高度。要求窗口中有3个输入框,分别作为a、b、c的输入,一个按钮单击后进行计算,结果显示在另一个文本框中<这个文本框不可编辑)。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
源程序文件代码清单如下:
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
/*
<applet code="ex6_3.class"width=800 height=400>
</applet>
*/
public class ex6_3 extends Applet implements ActionListener
{
Panel pane=new Panel();
Label 11=new Label("a点仰角:");
TextField tf1=new TextField(5);
Label 12:=new Label("b点仰角:");
TextField tf2=new TextField(5);
Label 13=new Label("a,b之间距离:");
TextField tf3=new TextField(5);
Button btn=new Button("OK");
Label 14=new Label("山高:");
TextField tf4=new TextField(20);
ex6_3 Obj23_3;
public void init()
{
pane.setLayout(new FlowLayout(PlowLayout.LEFT,10,5));
pane.add(11);
pane.add(tf1);
pane.add(12);
pane.add(tf2);
add("North",pane);
Panel p2=new Panel();
p2.setLayout(new FlowLayout(FlowLayout.LEFT,10,5));
p2.add(13);
p2.add(tf3);
p2.add(btn);
btn.addActionListener(this);
add("Center",p2);
Panel p3=new Panel();
p3.setLayout(new FlowLayout(FlowLayout.LEFT,10,5));
p3.add(14);
tf4.setEditable(true);
p3.add(tf4);
add("South",p3);
Obj23_3=new ex6 3();
}
public void doMessure(double a1,double a2,double a3,TextField tf)
{
double pi=Math.PI,a,b,h;
a=al*pi/180.0;
b=a2*pi/180.0;
h=a3/(1.0/Math.tan(a)-1.0/Math.tan(b));
tf.setText(Integer.toString(h));
}
public void actionPerformed(ActionEvent ae)
{
double a,b,c;
try
{
a=new Double(tf1.getText()).doubleValue();
b=new Double(tf2.getText()).doubleValue();
c=new Double(tf3.getText()).doubleValue();
obj23_3.doMessure(a,b,c, tf4};
}catch(NumberFormatExceptlon nfe)
{
tf4.setText("wrong number!");
}
}
}
ex6_3.html
<HTML>
<HEAD>
<TITLE>ex6_3</TITLE>
</HEAD>
<BODY>
<applet code="ex6_3.class"width=800 height=400>
</applet>
</BODY>
</HTML>
选项
答案
tf4.setEditable(false) h=a3/Math.abs(1.0/Math.tan(a)-1.0/Ma th.tan(b)) tf.setText(Double.toString(h))
解析
本题主要考查Applet窗口编程和AWT基本构件的使用以及事件处理机制,解题关键是设计出计算山高的方法,并且结合事件处理机制,调用该计算方法实现程序的功能。本题中,第1处,由于用显示结果的文本框不可编辑,因此参数为false;第2处,需要对分母进行取绝对值操作,否则最后结果会产生负数;第3处,由于h是double类型的变量,做数据类型转换时需要调用Double类的toString()方法。
转载请注明原文地址:https://kaotiyun.com/show/Y1np777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
要想将日期型或日期时间型数据中的年份用4位数字显示,应当使用设置命令
在SQL中,删除表的语句是
在VisualFoxPro中,假设教师表T(教师号,姓名,性别,职称,研究生导师)中,性别是C型字段,研究生导师是L型字段。若要查询“是研究生导师的女老师”信息,那么SQL语句“SELECT*FROMTWHERE<逻辑表达式>”中的<逻辑表达式>应是
假设数据库已经打开,要打开其中的视图myview,可使用命令:
在VisualFoxPro中,查询设计器和视图设计器很像,如下描述正确的是
如果希望用户在文本框中输入的字符显示的是“*”号,而不是真正输入的内容,应该指定的属性是
假设temp.dbf数据表中有两个字段“歌手号”和“最后得分”,下面程序段的功能是:将temp.dbf中歌手的“最后得分”填入“歌手”表对应歌手的“最后得分”字段中(假设已增加了该字段),在下划线处应该填写的SQL语句是USE歌手DOWHILE.NO
下列程序段执行以后,内存变量A和B的值是CLEAKA=10B=20SETUDFPARMSTOREFERENCEDOSQWITH(A),(B)&&参数A是值传递,B是值传递?A,BPROCEDURESQ
使用如下3个数据库表:学生表:S(学号,姓名,性别,出生日期,院系)课程表:C(课程号,课程名,学时)选课成绩表:SC(学号,课程号,成绩)在上述表中,出生日期数据类型为日期型,学时和成绩为数值型,其他均为字符型。用SQL语句查询选修的每门课程
SQL语言的更新命令的关键词是()。
随机试题
下列选项中,属于公务员考试录用范围的是()
视觉传导路()
尿沉渣检查标准化要求相对离心力为
经济学中的理性人假定,也称经济人假定,具体包括()。
甲与乙签订一份货款为人民币50万元的买卖合同,并依约定交付给乙定金人民币15万元。后乙违约没有履行该合同。乙应返还给甲人民币()。
下列哪种食品的制作过程与其他各项利用的原理不同?()
设函数y=f(x)具有二阶导数,且f’(x)>0,f’’(x)>0,△x为自变量x在点x0处的增量,△y与dy分别为f(x)在点x0处对应的增量与微分,若△x>0,则
Thismayhavepreservedtheelephantfrombeingwipedoutaswellasotheranimals______inAfrica.
GunRightsintheUSImmediatelyaftertheshootingatVirginiaTechUniversity,Americansgatheredtomournthedead.Thepresi
Withtheworld’spopulationestimatedtogrowfromsixtoninebillionby2050,researchers,businessesandgovernmentsarealr
最新回复
(
0
)