English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Programm lernen Sie, wie man mit einem Java-Programm den kleinsten gemeinsamen Vielfachen (LCM) von zwei Zahlen findet. Dies wird mit den for- und while-Schleifen in Java erreicht.
Der kleinste gemeinsame Vielfache (LCM) von zwei ganzen Zahlen ist der kleinste positive Ganzzahl, der durch beide Zahlen vollständig geteilt werden kann (ohne Rest).
public class LCM { public static void main(String[] args) { int n1 = 72, n2 = 120, lcm; //n1und n2zwischen den beiden Werten gespeichert lcm = (n1 > n2) ? n1 : n2; // immer true while(true) { if( lcm % n1 == 0 && lcm % n2 == 0) { System.out.printf("%d und %d ist der kleinste gemeinsame Vielfache %d.", n1, n2, lcm); break; } ++lcm; } } }
Wenn Sie dieses Programm ausführen, wird die Ausgabe sein:
72 und120 und lcm;360.
In diesem Programm werden die beiden Zahlen, um deren kleinsten gemeinsamen Vielfachen (LCM) es sich handelt, in den Variablen n1und n2。
Dann setzen wir den lcm zunächst auf den größten der beiden Zahlen.
Das liegt daran, dass der kleinste gemeinsame Vielfache (LCM) nicht kleiner als die größte Zahl sein kann. In einem unendlichen while-Schleife (while(true)) überprüfen wir, ob lcm durch n1und n2.
Falls das der Fall ist, haben wir den kleinsten gemeinsamen Vielfachen (LCM) gefunden. Wir drucken den kleinsten gemeinsamen Vielfachen (LCM) aus und verlassen den while-Schleife mit dem break-Befehl.
Ansonsten erhöhen wir den lcm um1und die Kriterien der teilbaren wieder zu überprüfen.
Wir können auch den GCD mit folgender Formel verwenden, um den kleinsten gemeinsamen Vielfachen (LCM) von zwei Zahlen zu finden:
LCM = (n1 * n2) / GCD
Wenn Sie nicht wissen, wie Sie den größten gemeinsamen Teiler (GCD) in Java berechnen, überprüfen Sie bitteJava-Programm, um den größten gemeinsamen Teiler (GCD) von zwei Zahlen zu finden.
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) { //prüfen, ob i ein Faktor der beiden Ganzzahlen ist if(n1 % i == 0 && n2 % i == 0) gcd = i; } int lcm = (n1 * n2) / gcd; System.out.printf("%d und %d ist der kleinste gemeinsame Vielfache %d.", n1, n2, lcm); } }
Die Ausgabe des Programms entspricht dem Beispiel1gleich.
Hier, im for-Schleifenumlauf, berechnen wir zwei Zahlen-n1und n2berechnet. Nachdem wir den GCD berechnet haben, verwenden wir das obige Gleichung, um den LCM zu berechnen.