1.编写两个函数,分别求两个整数的最大公约数和最小公被数,用主函数调用这两个函数,并输出结果,两个整数由键盘输入
package cn.oop.program;
import java.util.Scanner;
/**
* 题目:编写两个函数,分别求两个整数的最大公约数和最小公被数
* 用主函数调用这两个函数,并输出结果,两个整数由键盘输入
* @author 温暖wk
* 2018.8.18
* 例子:40 60
* 最大公约数:20
* 最小公倍数:120
*/
public class Test10 {
public static void main(String[] args) {
System.out.println("请输入两个整数:");
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();//获取第一个数
int b = scanner.nextInt();//获取第二个数
System.out.println("最大公约数是:"+greatestDivisor(a, b));
System.out.println("最小公倍数是:"+determine(a, b));
scanner.close();
}
public static int greatestDivisor(int a,int b) {
int temp;
if(a>b) {//确保a大于b
temp=b;
b=a;
a=temp;
}
while(a!=0) {
temp=b%a; //用大的数对小的数求余
b=a; //把小的数赋值给大的数,
a=temp; //把求余获得的结果赋值给小的数
}
return b;
}
public static int determine(int a,int b) {
int temp;
temp=b*a/greatestDivisor(a,b);//两个数相乘,除以它们的最大公倍数
return temp;
}
}