java基礎最大公約數最小公倍數
Posted merrysr
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java基礎最大公約數最小公倍數相关的知识,希望对你有一定的参考价值。
public static void main(String[] args) {
maxGy(); //求兩個數的最大公約數和最小公倍數
}
maxGy(); //求兩個數的最大公約數和最小公倍數
}
/*
* 最大公約數、最小公倍數
*/
* 最大公約數、最小公倍數
*/
public static void maxGy() {
Scanner sc1 = new Scanner(System.in);
System.out.println("請輸入一個正整數:");
int n = sc1.nextInt(); // 輸入的正整數
Scanner sc2 = new Scanner(System.in);
System.out.println("請輸入一個正整數:");
int m = sc2.nextInt(); // 輸入的正整數
System.out.println("請輸入一個正整數:");
int m = sc2.nextInt(); // 輸入的正整數
int min = m > n ? m : n; // 取出兩個數中較小的數
int maxGy = 1; // 定義最大公約數的初始值為1。黨兩個數互質時最大公約是1
for (int i = 2; i <= min; i++) { // 1不爲質數,所以從2開始循環,定義i表示min的質因數
if (n % i == 0 && m % i == 0) { // 如果i能被兩個數同時約分,則是它們的公約數,但不一定是最大的
maxGy = i; // 循環找到最大的公約數
}
}
System.out.print(m + "和" + n + "的最大公約數為:" + maxGy + " ;");
System.out.print(" " + m + "和" + n + "的最小公倍數為:" + (m * n) / maxGy + "。"); // 公式:最小公倍數 = 兩個數相乘/最大公約數
}
if (n % i == 0 && m % i == 0) { // 如果i能被兩個數同時約分,則是它們的公約數,但不一定是最大的
maxGy = i; // 循環找到最大的公約數
}
}
System.out.print(m + "和" + n + "的最大公約數為:" + maxGy + " ;");
System.out.print(" " + m + "和" + n + "的最小公倍數為:" + (m * n) / maxGy + "。"); // 公式:最小公倍數 = 兩個數相乘/最大公約數
}
以上是关于java基礎最大公約數最小公倍數的主要内容,如果未能解决你的问题,请参考以下文章