首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面是一个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
32
问题
下面是一个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="ex23_3.class" width=800 height=400 >
</applet>
*/
public class ex23_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);
ex23_3 obj23_3;
public void init(){
pane.setLayout(new Flow Layout (FlowLayout.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 ex23_3();
}
public void doMessure(double al,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(NumberFormatException nfe){
tf4.setText("wrong number!");
}
}
}
ex23_3, html
<HTML>
<HEAD>
<TITLE>ex23_3</TITLE>
</HEAD>
<BODY>
<applet code="ex23_3.class" width=800 height=400 >
</applet>
</BODY>
</HTML>
选项
答案
th4.setEditable(false) h=a3/Math.abs(1.0/Math.tan(a)-1.0/Math.tan(b)) tf.setText(Double.toString(h))
解析
本题主要考查Applet窗口编程和AWT基本构件的使用以及事件处理机制。解题关键是设计出计算山高的方法,并且结合事件处理机制,调用该计算方法实现程序的功能。本题中,第1处,由于用显示结果的文本框不可编辑,因此参数为false;第2处,需要对分母进行取绝对值操作,否则最后结果会产生负数;第3处,由于h是double类型的变量,做数据类型转换时需要调用Double类的toString()方法。
转载请注明原文地址:https://kaotiyun.com/show/FLnp777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
假设客户表中有客户号(关键字)C1~C10共10条客户记录,订购单表有订单号(关键字)OR1~OR8共8条订购单记录,并且订购单表参照客户表。如下命令可以正确执行的是
设有订单表order(其中包含字段:订单号,客户号,职员号,签订日期,金额),查询2007年所签订单的信息,并按金额降序排序,正确的SQL命令是
下面程序计算一个整数的各位数字之和,在下划线处应填写的语句是SETTALKOFFINPUT"x="TOxs=0DOWHILEx!=Os=s+MOD(x,10)______________ENDDO?sSETTALKON
从工程管理角度看,软件设计一般分为两步完成,它们是
下列选项中不属于软件生命周期开发阶段任务的是
在面向对象方法中,实现信息隐蔽是依靠
在考生文件夹下,打开该CDB数据库,完成如下简单应用:1.使用一对多表单向导选择CUST表和ORDER表生成一个名为ONE的表单。要求从父表CUST中选择所有字段,从子表ORDER中选择所有字段,使用“顾客号”建立两表之间的关系,样式为“阴影式”;按
如果数据环境设计器中有多个关联的表,若要删除某个表,则与之关联的表与被删除表之间的关系将()。
SQL语言的更新命令的关键词是
树是结点的集合,它的根结点数目是()
随机试题
若频率减小,波长将
足月新生儿,男,日龄4天,第二产,出生体重2.8kg,出现黄疸3天,并逐渐加重,1天来嗜睡拒奶,查体反应差,皮肤黄染,心率140次/分,两肺无异常,腹软,肝肋下3cm。新生儿溶血病时,应用清蛋白的目的是
患者,男性,60岁,高血压病15年,因心肌梗死反复出现心律不齐,服用阿替洛尔治疗,1周来反复发作心前区疼痛伴晕厥。该患者出现上述心律失常的主要病因可能是
下列除哪项外,均提示病情严重,预后不良( )。
患者,女性,20岁,乳房肿块,边缘清晰,活动度大,生长缓慢。最常见是
主观方面一定是故意的金融犯罪是()。
甲公司有关投资业务资料如下,假定各方盈余公积计提的比例均为10%,不考虑所得税影响:资料一:2017年7月1日,甲公司以银行存款15000万元从其他股东处购买了乙公司10%的股权。甲公司与乙公司的原股东在交易前不存在任何关联方关系,当日乙公司可辨认净资
隋朝是中国历史上第一个确立三省六部制和实行科举考试的朝代。()
设函数f(x)在x=0处连续,且则().
Ihaven’tseenherfor30years,butIrecognizedher______.
最新回复
(
0
)