您的位置:首页 > 编程语言 > Java开发

Java求最大公约数和最小公倍数

2017-04-19 00:34 387 查看
import java.util.Scanner;

public class Muitilpie {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
int x=in.nextInt();
int y=in.nextInt();
System.out.println("辗转相除法:最大公约数"+Muitilpie.Method(x, y)+",最小公倍数"+x*y/Muitilpie.Method(x, y));
System.out.println("相减法:最大公约数"+Muitilpie.Method1(x, y)+",最小公倍数"+x*y/Muitilpie.Method1(x, y));
System.out.println("穷举法:最大公约数"+Muitilpie.Method2(x, y)+",最小公倍数"+Muitilpie.Method3(x, y));
}
//辗转相除法,求最大公约数
public static int Method(int x,int y){
int a,b,c;
a=x;
b=y;
while(b!=0){
c=a%b;
a=b;
b=c;
}
return a;
}
//相减法,求最大公约数
public static int Method1(int x,int y){
while(x!=y){
if(x>y){
x=x-y;
}else{
y=y-x;
}
}
return x;
}
//穷举法,求最大公约数
public static int Method2(int x,int y){
for(int z=x;z>=0;z--){
if(x%z==0&&y%z==0){
return z;
}
}
return 1;
}
//穷举法,求最小公倍数
public static int Method3(int x,int y){
for(int z=x;;z++){
if(z%x==0&&z%y==0){
return z;
}
}
}
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: