English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В этой программе вы узнаете, как использовать Java программу для поиска наименьшей общей кратной двух чисел. Это делается с помощью циклов for и while в Java.
LCM двух целых чисел - это наименьшее положительное целое число, которое делится на оба числа без остатка.
public class LCM { public static void main(String[] args) { int n1 = 72, n2 = 120, lcm; // максимальное значение между n1 и n2 хранится в lcm lcm = (n1 > n2) ? n1 : n2; // всегда true while(true) { if(lcm % n1 == 0 && lcm % n2 == 0) { System.out.printf("%d и %d newest common multiple is %d.", n1, n2, lcm); break; } ++lcm; } } }
При запуске этой программы вывод будет следующим:
72 и 120 newest common multiple is 360.
В этой программе два числа, из которых нужно найти наименьшую общую кратную, хранятся в переменных n1 и n2.
Затем мы сначала устанавливаем lcm в максимальное из этих двух чисел.
Это потому, что наименьшая общая кратная не может быть меньше самого большого числа. В бесконечном цикле while(true) мы проверяем, полностью ли lcm делится n1 и n2.
Если это так, мы нашли наименьшую общую кратную. Мы выводим наименьшую общую кратную и используем оператор break, чтобы выйти из цикла while.
В противном случае, мы увеличиваем lcm на 1 и повторно проверяем условие делимости.
Мы также можем использовать GCD для поиска LCM двух чисел по следующей формуле:
LCM = (n1 * n2) / GCD
Если вы не знаете, как вычислить GCD на Java, пожалуйста, проверьтеJava программа для нахождения НОД двух чисел.
public class LCM { public static void main(String[] args) { int n1 = 72, n2 = 120, gcd = 1; for(int i = 1; i <= n1 && i <= n2; ++i) { // Проверка, является ли i делителем обоих целых чисел if(n1 % i == 0 && n2 % i == 0) gcd = i; } int lcm = (n1 * n2) / gcd; System.out.printf("%d и %d newest common multiple is %d.", n1, n2, lcm); } }
Вывод программы совпадает с примером 1.
Здесь, в цикле for, мы вычисляем НОД двух чисел - n1 и n2. После вычисления мы используем上面的 формулу для вычисления НКМ.