Java-program til at finde LCM med to numre

I dette program lærer du at finde lcm med to tal ved hjælp af GCD og ikke ved hjælp af GCD. Dette gøres ved hjælp af for og mens sløjfer i Java.

For at forstå dette eksempel skal du have kendskab til følgende Java-programmeringsemner:

  • Java hvis … ellers Erklæring
  • Java mens og gør … mens Loop

LCM for to heltal er det mindste positive heltal, der er helt delelig med begge tal (uden en rest).

Eksempel 1: LCM ved brug af Loop og if Statement

 public class Main ( public static void main(String() args) ( int n1 = 72, n2 = 120, lcm; // maximum number between n1 and n2 is stored in lcm lcm = (n1> n2) ? n1 : n2; // Always true while(true) ( if( lcm % n1 == 0 && lcm % n2 == 0 ) ( System.out.printf("The LCM of %d and %d is %d.", n1, n2, lcm); break; ) ++lcm; ) ) ) 

Produktion

 LCM på 72 og 120 er 360.

I dette program er de to tal, hvis LCM skal findes, gemt i henholdsvis variablerne n1 og n2.

Derefter indstillede vi oprindeligt lcm til det største af de to tal. Dette skyldes, at LCM ikke kan være mindre end det største antal.

Inde i den uendelige mens sløjfe ( while(true)) kontrollerer vi, om lcm perfekt deler både n1 og n2 eller ej.

Hvis det gør det, har vi fundet LCM. Vi udskriver LCM og bryder ud fra while-loop ved hjælp af breakstatement.

Ellers øges vi lcm med 1 og tester igen delbarhedsbetingelsen.

Vi kan også bruge GCD til at finde LCM for to tal ved hjælp af følgende formel:

 LCM = (n1 * n2) / GCD

Hvis du ikke ved, hvordan du beregner GCD i Java, skal du tjekke Java-program for at finde GCD med to tal.

Eksempel 2: Beregn LCM ved hjælp af GCD

 public class Main ( public static void main(String() args) ( int n1 = 72, n2 = 120, gcd = 1; for(int i = 1; i <= n1 && i <= n2; ++i) ( // Checks if i is factor of both integers if(n1 % i == 0 && n2 % i == 0) gcd = i; ) int lcm = (n1 * n2) / gcd; System.out.printf("The LCM of %d and %d is %d.", n1, n2, lcm); ) ) 

Output fra dette program er det samme som eksempel 1.

Her, inden i for-løkken, beregner vi GCD for de to tal - n1 og n2. Efter beregningen bruger vi ovenstående formel til at beregne LCM.

Interessante artikler...