最大公约数计算.从键盘接收两个整数,编写程序求出这两个整数的最大公约数和最小公
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
最大公约数计算.从键盘接收两个整数,编写程序求出这两个整数的最大公约数和最小公
代码如下:
import java.util.Scanner;
public class lcmandgcd{
/*题目要求:从键盘输入两个整数,计算两个数的最小公倍数和最大公约数
*基本思路:
* 最大公约数:利用辗转相除法。
* 辗转相除法:两个整数的最大公约数等于其中较小的那个数和两数相除的余数的最大公约数
* 最小公倍数:两个自然数的乘积等于这两个自然数的最大公约数和最小公倍数的乘积。
*/
public static int gcd(int a,int b){
if(a < b){
int temp = b;
b = a;
a = temp;
}//比较a,b大小并且令a>b;
if(b == 0){
return a;//此时a为最大公约数;
}
int r = a%b;
return gcd(b,r);//辗转相除法
}
public static void main(String[] args){
Scanner sc =new Scanner(System.in);
System.out.println("请输入两个整数:");
int a = sc.nextInt();
int b = sc.nextInt();
int c = a*b;
System.out.println("两数的最大公倍数为:"+(c/gcd(a,b))); System.out.println("两数的最大公约数为:"+gcd(a,b));
}
}。