《java算法最大公约数和最小公倍数》由会员分享,可在线阅读,更多相关《java算法最大公约数和最小公倍数(3页珍藏版)》请在金锄头文库上搜索。
1、package first;import java.util.Scanner;/* 求两个数的最大公约数和最小公倍数*/public class YueshuBeishu public static void main(String args) Scanner scanner = new Scanner(System.in);System.out.println(请输入第一个数: );int num1 = scanner.nextInt();System.out.println(请输入第二个数: );int num2 = scanner.nextInt();int big = big(num1
2、,num2);int small = small(num1,num2);if(big=0 | small=0)System.out.println(求最大公 约数时,除数不能为0);elseSystem.out.println(num1+和+num2+的最大公约数是:+big);System.out.println(num1+和+num2+的最小公倍数是:+small);/求最大公约数: 较大的数除以较小的数,然后将 较小的数作为下一次的大数,余数作为小数,直到较小的数为0,返回较大的数public static int big(int num1,int num2)int big = 0;in
3、t small = 0;if(num1num2)big = num1;small = num2;elsebig = num2;small = num1;if(small=0)System.out.println(除数不能 为0 );return 0;while(true)if(small=0)return big;elseint temp = big;big = small;small = temp%small;/求最小公倍数:两数之 积除以最大公 约数public static int small(int num1,int num2)int big = big(num1,num2);if(big=0)System.out.println(求最大公 约数时,除数不能为0);return 0;elsereturn (num1*num2)/big;