A-A+

请完成下列Java程序:输入2个整数 求最大公约数。要求有2个单行文本区作为输入 2个按钮

2022-08-05 20:20:06 问答库 阅读 171 次

问题详情

请完成下列Java程序:输入2个整数,求最大公约数。要求有2个单行文本区作为输入,2个按钮,一个点击完成计算,一个点击退出程序。
注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填人适当的语句。
import java.awt.*;
import java.awt.event.*;
public class ex14_2 extends Frame. implements ActionListener{
private Label l;
private TextField tf,tf2;
public static void main(String[]arg){
exl4_2 obj14_2=new ex14_2();
}
public ex14_2(){
setTitle("ex14_2");
Panel p1;
Button b=new Button("OK");
p1=new Panel();
tf=new TextField(8);
p1.add(tf);
d2=new TextField(8);
p1.add(tf2);
b.addActionListener(this);
p1.add(b);
b=new Button("Exit");
b.addActionListener(this);
p1.add(b);
add("North",p1);
Panel p2=new Panel();
1=new Label("最大公约数:");
p2.add(1);
add("Center",P2);
setSize(500,300);
show();
}
public void actionPerformed(ActionEvent ae){
if(ae.getActionCommand().equals("Exit"))//比较ae对象的标识名,是否为Exit。
System.exit(0);
else if(ae.getActionCommand().equals("OK")){
try{
int a=Integer.parseInt(tf.getText());
int b=Integer.parseInt(tf2.getText());
int r,i;
while(b>0){
__________;
__________;
b=r;
}
1.setText("最大公约数:"+Integer.toString(a));
}catch(NumberFormatException nfe){
1.setText("请正确输入!");
}
}
}
}请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:r=a%ba=b
r=a%ba=b

考点:最大公约数,整数