Java求最大公因数
一 、 求最大公因数(辗转相除法)
例: 求567与405的最大公因数:
567 / 405 = 1 (余162)
405 / 162 = 2(余81)
162 / 81 = 2(余0)
即 567 与 405 的最大公因数为:81
二 、Java思路解释
1、编写求最大公因数的函数
(1)要求相除,先判断输入两个值的大小,由大数除以小数 a % b
(2)相除取余用 ' % ' ,相除得数取最大整数用 ' / '
(3)将被除数与余数相比较,将较大值赋值给 a ,较小值赋值给 b,再次相除,直至余数为0
2、主函数编写输入语句(Scanner语句)
3、调用函数
4、输出语句
三 、 Java编码
import java.util.Scanner;
public class zuidagongyinshi { //打错了最后的'shu'......
public static int gcd(int a,int b) {
int gcd = 0,c;
if(a > b)
{
while(b != 0)
{
a = a % b;
if(a < b)
{
c = a;
a = b;
b = c;
}
gcd = a;
}
}
if(a == b)
gcd = a;
else
{
c = a;a = b;b = c;
while(b != 0)
{
a = a % b;
if(a < b){c = a;a = b;b = c;}
gcd = a;
}
}
return gcd;
}
public static void main(String[] args) {
Scanner zs = new Scanner(System.in);
System.out.print("请输入一个整数:");
int a = zs.nextInt();
System.out.print("请再输入一个整数:");
int b = zs.nextInt();
int c = gcd(a,b);
System.out.println("最大公因数是:"+c);
}
}
四 、Java结果展示