import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Greatest extends Applet implements ActionListener {//继承Applet类实现ActionListener接口
private static final long serialVersionUID = 1L;//版本号为1L
Label l1, l2;//声明两个Label(l1,l2) 用来显示
TextField tf1, tf2;//声明两个TextFiled 用来接收用户输入的参数
public void init() {
l1 = new Label("请输入数字:");//实例化l1并设置其显示 请输入数字:
add(l1);//把l1添加到Applet中
tf1 = new TextField(5);//实例化TextField tf1 并设定其columns为5
add(tf1);//把tf1添加到Applet中
tf2 = new TextField(5);//实例化TextField tf2 并设定其columns为5
add(tf2);//把tf2添加到Applet中
l2 = new Label("最大公约数为:" + "最小公倍数为:");//实例化l2并设置其显示 最大公约数为:最小公倍数为:
add(l2);//把l2添加到Applet中
tf1.addActionListener(this);//给tf1添加事件监听
tf2.addActionListener(this);//给tf1添加事件监听
resize(200, 200);
}
public void actionPerformed(ActionEvent e) {
int i, j, k, mul, temp, div;//定义int型变量
i = Integer.parseInt(tf1.getText());//得到tf1里的值转换成Int类型存放到i变量中
j = Integer.parseInt(tf2.getText());//得到tf2里的值转换成Int类型存放到j变量中
k = i * j;//把i乘以j的值存入变量k中
if (i < j) {//如果i值小于j的值
temp = i;//把i的值赋值给temp变量
i = j;//把j的值赋值给i变量
j = temp;//把temp的值赋值给j变量
/*
* 这里要做的就是: 如果i的值小于j的值,就交换两者的值。
* */
}
if (i % j == 0)//如果i除以j的余数等于0 也就是i能够整除j
div = j;//把j变量的值赋值给div变量
else { //否则
do {
div = i % j;//把i除以j的余数赋值给div
i = j;//把j值赋值给i
j = div;//把div变量的值赋值给j变量
} while (div != 0);//当div不等于0的时候
div = i;//把i 的值赋值给div
}
mul = k / div;//把k除以div的商赋值给mul变量
l2.setText("最大公约数为:" + div + "最小公倍数为:" + mul);//设置l2显示的内容
}
}