Јава програм за проналажење ГЦД-а од два броја

У овом програму ћете научити да пронађете ГЦД два броја у Котлину. То се постиже употребом фор и вхиле петљи уз помоћ иф елсе израза.

Да бисте разумели овај пример, требало би да имате знање о следећим темама програмирања Јава:

  • Изјава за Јава ако … друго
  • Јава за петљу
  • Јава вхиле и уради … вхиле Лооп

ХЦФ или ГЦД од две целине је највећи цео број који може тачно поделити оба броја (без остатка).

Пример 1: Пронађите ГЦД два броја помоћу израза фор лооп и иф

 public class GCD ( public static void main(String() args) ( int n1 = 81, n2 = 153, 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; ) System.out.printf("G.C.D of %d and %d is %d", n1, n2, gcd); ) )

Оутпут

 ГЦД од 81 и 153 је 9

Овде су два броја чији се ГЦД налази налазе у н1, односно н2.

Затим се фор петља извршава док и није мањи од н1 и н2. На овај начин се сви бројеви између 1 и најмањег од два броја понављају да би се пронашао ГЦД.

Ако су и н1 и н2 дељиви са и, гцд се поставља на број. То траје све док не пронађе највећи број (ГЦД) који дели н1 и н2 без остатка.

Овај проблем такође можемо решити помоћу вхиле петље на следећи начин:

Пример 2: Пронађите ГЦД два броја помоћу вхиле петље и иф елсе израза

 public class GCD ( public static void main(String() args) ( int n1 = 81, n2 = 153; while(n1 != n2) ( if(n1> n2) n1 -= n2; else n2 -= n1; ) System.out.println("G.C.D = " + n1); ) )

Оутпут

 ГЦД = 9

Ово је бољи начин за проналажење ГЦД-а. У овој методи мањи цели број се одузима од већег целог броја, а резултат се додељује променљивој која садржи већи цели број. Овај процес се наставља све док н1 и н2 не буду једнаки.

Горе наведена два програма раде како је предвиђено само ако корисник унесе позитивне целе бројеве. Ево мале модификације другог примера да бисмо пронашли ГЦД и за позитивне и за негативне целобројне вредности.

Пример 3: ГЦД и за позитивне и за негативне бројеве

 public class GCD ( public static void main(String() args) ( int n1 = 81, n2 = -153; // Always set to positive n1 = ( n1> 0) ? n1 : -n1; n2 = ( n2> 0) ? n2 : -n2; while(n1 != n2) ( if(n1> n2) n1 -= n2; else n2 -= n1; ) System.out.println("G.C.D = " + n1); ) )

Оутпут

 ГЦД = 9

Занимљиви Чланци...