I dette programmet lærer du å finne lcm med to tall ved å bruke GCD, og ved ikke å bruke GCD. Dette gjøres ved bruk av mens loop i Kotlin.
LCM for to heltall er det minste positive heltallet som er helt delelig med begge tallene (uten en rest).
Eksempel 1: Kotlin-program for å beregne LCM ved bruk av mens Loop og if Statement
fun main(args: Array) ( val n1 = 72 val n2 = 120 var lcm: Int // maximum number between n1 and n2 is stored in lcm lcm = if (n1> n2) n1 else n2 // Always true while (true) ( if (lcm % n1 == 0 && lcm % n2 == 0) ( println("The LCM of $n1 and $n2 is $lcm.") break ) ++lcm ) )
Når du kjører programmet, vil utdataene være:
LCM på 72 og 120 er 360.
I dette programmet lagres de to tallene hvis LCM er å finne i henholdsvis variablene n1 og n2.
Deretter satte vi opprinnelig lcm til det største av de to tallene. Dette er fordi LCM ikke kan være mindre enn det største antallet.
I likhet med Java while(true)
sjekker vi om lcm perfekt deler både n1 og n2 eller ikke i den uendelige mens loop ( ).
Hvis den gjør det, har vi funnet LCM. Vi skriver ut LCM og bryter ut fra mens sløyfen bruker break
uttalelse.
Ellers øker vi lcm med 1 og tester delbarhetsbetingelsen på nytt.
Her er ekvivalent Java-kode: Java-program for å finne LCM med to tall.
Vi kan også bruke GCD til å finne LCM for to tall ved hjelp av følgende formel:
LCM = (n1 * n2) / GCD
Hvis du ikke vet hvordan du skal beregne GCD i Java, sjekk Kotlin-programmet for å finne GCD med to tall.
Eksempel 2: Kotlin-program for beregning av LCM ved bruk av GCD
fun main(args: Array) ( val n1 = 72 val n2 = 120 var gcd = 1 var i = 1 while (i <= n1 && i <= n2) ( // Checks if i is factor of both integers if (n1 % i == 0 && n2 % i == 0) gcd = i ++i ) val lcm = n1 * n2 / gcd println("The LCM of $n1 and $n2 is $lcm.") )
Resultatet av dette programmet er det samme som eksempel 1.
Her, inne i mens sløyfen, beregner vi GCD av de to tallene - n1 og n2. Etter beregningen bruker vi formelen ovenfor for å beregne LCM.