首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面是一个Applet程序,其功能是输入3个双精度浮点数:a,b,c,构成一个一元二次方程,a*x*x+b*x+c=0,其判别式d=b*b-4*a*c,若d为负数则输出“没有实根”,否则打印出2个实根。要求,有3个输入框,输入a,b,c,一个按钮,点击实现
下面是一个Applet程序,其功能是输入3个双精度浮点数:a,b,c,构成一个一元二次方程,a*x*x+b*x+c=0,其判别式d=b*b-4*a*c,若d为负数则输出“没有实根”,否则打印出2个实根。要求,有3个输入框,输入a,b,c,一个按钮,点击实现
admin
2009-01-15
118
问题
下面是一个Applet程序,其功能是输入3个双精度浮点数:a,b,c,构成一个一元二次方程,a*x*x+b*x+c=0,其判别式d=b*b-4*a*c,若d为负数则输出“没有实根”,否则打印出2个实根。要求,有3个输入框,输入a,b,c,一个按钮,点击实现求根过程,一个不可编辑的文本区,用作输出结果。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
import java. io. *
import java. awt. *
import java. awt. event. *
import java. applet. Applet;
/*
<applet code="ex3_1. class" width=800 height=400>
</applet>
*/
public class ex3_1 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("c:")
TextField tf3=new TextField(5);
Button btn= new Button("OK")
Label 14=new Label("答案")
TextField tf4=new TextField(20);
ex3_1 obj3_1
public void init(){
pane. setLayout( new FlowLayout (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(false)
p3. add(tf4)
add("South" ,p3)
obj3_1 = new ex3_1 ( )
}
public void doReal(double a1,double a2,double a3,TextField tf)
double d, x1, x2
d=a1 * a1-4.0 * a2 * a3;
if(d>=0.0)
x1=(-a2+Math. sqrt(d))/(2.0 * a1);
x2=(-a2+Math. sqrt(d))/(2.0 * a1);
tr. setText("2个实根:x1="+x1+"\nx2="+x2);
}
else {
tr. setText ( "没有实根!")
}
}
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( );
obj3_1, doReal(a,b,c, 14);
} catch(NumberFormatException nfe) {
tf4. setText( "wrong number!")
}
}
}
ex3_l. html
<HTML>
<HEAD>
<TITLE> ex3_l </TITLE>
</HEAD>
<BODY>
<applet code="ex3_l, class" width=800 height=400>
</applet>
</BODY>
</HTML>
选项
答案
d=a2*a2-4.0*a1*a3 x2=(-a2-Math.sqrt(d))/(2.0*a1) obj3_1.doReal(a,b,c,tf4)
解析
本题主要考查Applet窗口编程和AWT基本构件的使用和事件处理机制以及一元二次方程组的求根公式。解题关键是熟悉基本组件 Button,Panel,Label等的用法和事件处理机制,熟悉一元二次方程组的求解,会使用Math类中给出的常用方法进行简单的数学计算。本题中,第1处,求判别式,注意判别式的公式是d= b*b-4*a*c,弄清楚doReal()方法中的参数对应的关系;第2处,求根公式的表示,应该- a2-Math.sqrt(d),否则,两个根一样;第3处,对象。obj3_1调用doReal()方法时,注意,最后1个参数是TextField类的对象,而不是Label类的对象。
转载请注明原文地址:https://www.kaotiyun.com/show/91np777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
在VisualFoxPro中,程序中不需要用PUBLIC等命令明确声明和建立,可直接使用的内存变量是
在使用查询设计器创建查询时,为了指定在查询结果中是否包含重复记录(对应于DISTINCT),应该使用的选项卡是
在查询设计器的工具栏中有、而在视图设计器中没有的工具按钮是
软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是
对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为
下列关于SQL对表的定义的说法中,不正确的选项是()。
(1)打开数据库“外汇”,通过“外币代码”字段为“外汇代码”和“外汇账户”建立永久联系。(2)新建一个名为“外汇管理”的项目文件,将数据库“外汇”加入“外汇管理”项目中。(3)修改mymenu菜单文件,为“文件”下的子菜单项“查找”设置访问键F。(4
以下关于关系的说法正确的是
负责数据库中查询操作的数据库语言是
在自定义Swing构件的时候,首先要确定使用哪种构件类作为所定制构件的【】。建议继承JPanel类或更具体的Swing构件类。
随机试题
下列哪些腹水检查结果支持结核性腹膜炎的诊断?
腹部正位照片能显示其轮廓的脏器是
生理学所说的体温是
西咪替丁最适用于治疗()。
关于控制钢筋混凝土框架柱轴压比的主要作用,下列说法正确的是()。
监管机构对银行业金融机构进行审慎有效监管的主要目标有()。
教师在组织幼儿进行身体锻炼时,应遵循的幼儿园健康教育原则是()。
“一头狮子率领的一群绵羊,能够打败一只绵羊率领的一群狮子”体现了管理学中的哪个原理?
阅读下列说明,回答问题。[说明]某公司承接了一个银行业务系统的软件开发项目,质量要求非常高。项目经理小赵制定了项目的整体计划,将项目划分为需求、设计、编码和测试四个阶段。他将测试阶段预留了大量的时间,以便开展充分的测试工作。需求分析
Whatdoesthepassagemainlydiscuss?Accordingtotheauthor,thedistortionsofreality______.
最新回复
(
0
)