Πρόγραμμα Java για την εύρεση GCD δύο αριθμών

Σε αυτό το πρόγραμμα, θα μάθετε να βρείτε GCD δύο αριθμών στο Kotlin. Αυτό γίνεται με τη χρήση για και ενώ βρόχους με τη βοήθεια των δηλώσεων αν αλλιώς.

Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες εφαρμογές προγραμματισμού Java:

  • Java αν… αλλιώς Δήλωση
  • Java για βρόχο
  • Java ενώ και κάνουμε… ενώ Loop

Το HCF ή GCD δύο ακέραιων είναι ο μεγαλύτερος ακέραιος που μπορεί να διαιρέσει ακριβώς και τους δύο αριθμούς (χωρίς υπόλοιπο).

Παράδειγμα 1: Βρείτε GCD δύο αριθμών χρησιμοποιώντας το loop και if statement

 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); ) )

Παραγωγή

 Το GCD των 81 και 153 είναι 9

Εδώ, δύο αριθμοί των οποίων το GCD βρίσκονται, αποθηκεύονται στα n1 και n2 αντίστοιχα.

Στη συνέχεια, εκτελείται ένα για βρόχο έως ότου το i είναι μικρότερο από το n1 και το n2. Με αυτόν τον τρόπο, όλοι οι αριθμοί μεταξύ του 1 και του μικρότερου από τους δύο αριθμούς επαναλαμβάνονται για την εύρεση του GCD.

Εάν και τα δύο n1 και n2 διαιρούνται με i, το gcd ορίζεται στον αριθμό. Αυτό συνεχίζεται μέχρι να βρει τον μεγαλύτερο αριθμό (GCD) που διαιρεί και τα n1 και n2 χωρίς υπόλοιπο.

Μπορούμε επίσης να λύσουμε αυτό το πρόβλημα χρησιμοποιώντας ένα loop loop ως εξής:

Παράδειγμα 2: Βρείτε το GCD δύο αριθμών χρησιμοποιώντας τη δήλωση while loop και αν αλλιώς

 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); ) )

Παραγωγή

 GCD = 9

Αυτός είναι ένας καλύτερος τρόπος για να βρείτε το GCD. Σε αυτήν τη μέθοδο, ο μικρότερος ακέραιος αφαιρείται από τον μεγαλύτερο ακέραιο και το αποτέλεσμα αντιστοιχεί στη μεταβλητή που κρατά μεγαλύτερο ακέραιο. Αυτή η διαδικασία συνεχίζεται έως ότου τα n1 και n2 είναι ίδια.

Τα παραπάνω δύο προγράμματα λειτουργούν όπως προορίζεται μόνο εάν ο χρήστης εισάγει θετικούς ακέραιους αριθμούς. Ακολουθεί μια μικρή τροποποίηση του δεύτερου παραδείγματος για να βρείτε το GCD τόσο για θετικούς όσο και για αρνητικούς ακέραιους αριθμούς.

Παράδειγμα 3: GCD τόσο για θετικούς όσο και για αρνητικούς αριθμούς

 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); ) )

Παραγωγή

 GCD = 9

ενδιαφέροντα άρθρα...