网友您好, 请在下方输入框内输入要搜索的题目:

题目内容 (请给出正确答案)

下面是一个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="ex21_3.class" width=800 height=400>

</applet>

*/

public class ex21_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("c:");

TextField tf3 = new TextField(5);

Button btn = new Button("OK");

Label 14=new Label("答案:");

TextField tf4=new TextField(20);

ex21_3 obj21_3;

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);

obj21_3=new ex21_3();

}

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);

tf.setText("2个实根: x1="+x1+"\nx2="+x2);

}

else{

tf.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();

obj21_3.doReal(a,b,c,14);

}catch(NumberFormatException nfe){

tf4.setText("wrong number!");

}

}

}

ex21_3 . htm1

<HTML>

<HEAD>

<TITLE>ex21_3</TITLE>

</HEAD>

<BODY>

<applet code="ex21_3.class" width=800 height=400 >

</applet>

</BODY>

</HTML>


参考答案

更多 “ 下面是一个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="ex21_3.class" width=800 height=400></applet>*/public class ex21_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("c:");TextField tf3 = new TextField(5);Button btn = new Button("OK");Label 14=new Label("答案:");TextField tf4=new TextField(20);ex21_3 obj21_3;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);obj21_3=new ex21_3();}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);tf.setText("2个实根: x1="+x1+"\nx2="+x2);}else{tf.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();obj21_3.doReal(a,b,c,14);}catch(NumberFormatException nfe){tf4.setText("wrong number!");}}}ex21_3 . htm1<HTML><HEAD><TITLE>ex21_3</TITLE></HEAD><BODY><applet code="ex21_3.class" width=800 height=400 ></applet></BODY></HTML> ” 相关考题
考题 如果2是一元二次方程x2+bx+2=0的一个根,那么常数b的值为________________.

考题 下列软件中,属于系统软件的是A.自编的一个C程序,功能是求解一个一元二次方程B.WINDOWS 操作系统C.用汇编语言编写的一个练习程序D.存储有计算机基本输入输出系统的ROM 芯片

考题 现在有负无限值双精度浮点数x和负有限值单精度浮点数y,以下关于x%y的说法中,______是正确的。A.NaNB.负无限双精度浮点数C.负有限双精度浮点数D.负无限单精度浮点数

考题 一元二次方程a*x*x+b*x+c=0的其中一个根是A.x=(-b+math.sqrt(b*b-4*a*c))/2*aB.x=(-b+math.sqrt(b*b-4*a*c))/2/aC.x=(-b+math.sqrt(b*b-4*a*c))/(2/a)D.x=-b+math.sqrt(b*b-4*a*c)/2*a

考题 已知一元二次方程为a*(x*x)+b*x+c=0,且该方程有两个相等的实数根,请写出表示该一元二次方程根的表达式,已知开平方函数为sqrt(x)

考题 6、一元二次方程a*x*x+b*x+c=0的其中一个根是A.x=(-b+math.sqrt(b*b-4*a*c))/2*aB.x=(-b+math.sqrt(b*b-4*a*c))/2/aC.x=(-b+math.sqrt(b*b-4*a*c))/(2/a)D.x=-b+math.sqrt(b*b-4*a*c)/2*a

考题 用变量tt给出下面的定义  a) 一个双精度浮点数 b) 一个指向双精度浮点数的指针 c) 一个指向指针的的指针,它指向的指针是指向一个双精度浮点数 d) 一个有10个双精度浮点数的数组 e) 一个有10个指针的数组,该指针是指向一个双精度浮点数的 f) 一个指向有10个双精度浮点数数组的指针  g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数 h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数

考题 一元二次方程a*x*x+b*x+c=0的其中一个根是A.x=(-b+math.sqrt(b*b-4*a*c))/2/aB.x=(-b+math.sqrt(b*b-4*a*c))/2*aC.x=(-b+math.sqrt(b*b-4*a*c))/(2/a)D.x=-b+math.sqrt(b*b-4*a*c)/2*a

考题 下列软件中()一定是系统软件。A.WINDOWS操作系统B.存储有计算机基本输入输出系统的ROM芯片C.用汇编语言编写的一个练习程序D.自编的一个C程序,功能是求解一个一元二次方程