求最大公约数最简单算法(欧几米德算法)
import java.util.*;
public class text {//欧几米德求最大公约数
public static void main(String[] args) {
System.out.println("请输入2个数字");
Scanner x=new Scanner(System.in);
int a1=x.nextInt();
int a2=x.nextInt();
while(a1%a2!=0) {
int w=a1;
a1=a2;
a2=w%a2;
}
System.out.println(a2);
}
}
原理:
2个数m 和 n,如果m对n求余等于0,那么n就是m的最大公约数;
如果不是则令m等于n,n等于m对n求余的数值,直到m对n求余等于0为止
m n
32 48
48 32
32 **16**