Java(第十一天)

一、计算两个整数的最大公约数
package exercise;
import javax.swing.JOptionPane;
public class GreatestCommonDivisor {     //还可以用欧几里得算法简化
       public static void main(String[] args) {
              String intString1=JOptionPane.showInputDialog("请输入第一个整数");
              int num1=Integer.parseInt(intString1);
              String intString2=JOptionPane.showInputDialog("请输入第二个整数");
              int num2=Integer.parseInt(intString2);
              
              int k=1;   //切记此处不能取0
              int gcd=1;   //最小的最大公约数为1
              while(k<=num1&&k<=num2){    //最大公约数必须小于或等于输入的两个整数,此处也可用for循环来编写
                     if(num1%k==0&&num2%k==0)     //进一步限制条件为最大公约数必须能被两个整数整除
                           gcd=k;      //计算到最后,gcd会被最大的k覆盖
                     k++;     //k++是在while的层次,不要放到if循环里面去了
              }
              JOptionPane.showMessageDialog(null, num1+"和"+num2+"的最大公约数是:"+gcd);
       }
}

你可能感兴趣的:(Java(第十一天))