Programul Kotlin pentru a găsi GCD din două numere

În acest program, veți învăța să găsiți GCD de două numere în Kotlin. Acest lucru se face folosind bucla while cu ajutorul instrucțiunii if else.

HCF sau GCD a două numere întregi este cel mai mare număr întreg care poate împărți exact ambele numere (fără rest).

Exemplul 1: Găsiți GCD a două numere utilizând bucla while

 fun main(args: Array) ( val n1 = 81 val n2 = 153 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 ) println("G.C.D of $n1 and $n2 is $gcd") )

Când rulați programul, ieșirea va fi:

 GCD din 81 și 153 este 9

Aici, două numere ale căror GCD trebuie găsite sunt stocate în n1 și respectiv n2.

Apoi, se execută o buclă while până când i este mai mică decât n1 și n2. În acest fel, toate numerele cuprinse între 1 și cel mai mic dintre cele două numere sunt iterate pentru a găsi GCD.

Dacă atât n1 cât și n2 sunt divizibile cu i, mcd este setat la numărul. Acest lucru continuă până când găsește cel mai mare număr (GCD) care împarte atât n1 cât și n2 fără rest.

Spre deosebire de Java, nu puteți utiliza o buclă for cu condiții pentru această problemă. Iată codul Java echivalent: Program Java pentru a găsi GCD din două numere.

Există o alternativă mai bună pentru găsirea GCD în Kotlin după cum urmează:

Exemplul 2: Găsiți GCD de două numere (o alternativă mai bună)

 fun main(args: Array) ( var n1 = 81 var n2 = 153 while (n1 != n2) ( if (n1> n2) n1 -= n2 else n2 -= n1 ) println("G.C.D = $n1") )

Când rulați programul, ieșirea va fi:

 GCD = 9

Acesta este un mod mai bun de a găsi GCD. În această metodă, un număr întreg mai mic este scăzut din numărul întreg mai mare, iar rezultatul este atribuit variabilei care deține un număr întreg mai mare. Acest proces este continuat până când n1 și n2 sunt egale.

Cele două programe de mai sus funcționează conform destinației numai dacă utilizatorul introduce numere întregi pozitive. Iată o mică modificare a celui de-al doilea exemplu pentru a găsi GCD atât pentru numere întregi pozitive, cât și negative.

Exemplul 3: GCD atât pentru numerele pozitive, cât și pentru cele negative

 fun main(args: Array) ( var n1 = 81 var n2 = -153 // Always set to positive n1 = if (n1> 0) n1 else -n1 n2 = if (n2> 0) n2 else -n2 while (n1 != n2) ( if (n1> n2) n1 -= n2 else n2 -= n1 ) println("G.C.D = $n1") )

Când rulați programul, ieșirea va fi:

 GCD = 9

Articole interesante...