Σε αυτό το παράδειγμα, θα μάθετε να υπολογίζετε το LCM (Χαμηλότερο κοινό πολλαπλάσιο) δύο αριθμών που έχουν εισαχθεί από τον χρήστη.
Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες θεματολογίες προγραμματισμού Γ:
- Χ προγραμματιστές προγραμματισμού
- C αν… αλλιώς Δήλωση
- C ενώ και κάνουμε… ενώ Loop
Το LCM των δύο ακέραιων n1 και n2 είναι ο μικρότερος θετικός ακέραιος που διαιρείται τέλεια και από τα n1 και n2 (χωρίς ένα υπόλοιπο). Για παράδειγμα, το LCM των 72 και 120 είναι 360.
LCM χρησιμοποιώντας ενώ και αν
#include int main() ( int n1, n2, max; printf("Enter two positive integers: "); scanf("%d %d", &n1, &n2); // maximum number between n1 and n2 is stored in min max = (n1> n2) ? n1 : n2; while (1) ( if (max % n1 == 0 && max % n2 == 0) ( printf("The LCM of %d and %d is %d.", n1, n2, max); break; ) ++max; ) return 0; )
Παραγωγή
Εισαγάγετε δύο θετικούς ακέραιους αριθμούς: 72 120 Το LCM των 72 και 120 είναι 360.
Σε αυτό το πρόγραμμα, οι ακέραιοι αριθμοί που εισάγει ο χρήστης αποθηκεύονται στη μεταβλητή n1 και n2 αντίστοιχα.
Ο μεγαλύτερος αριθμός μεταξύ των n1 και n2 αποθηκεύεται στο μέγιστο. Το LCM δύο αριθμών δεν μπορεί να είναι μικρότερο από το μέγιστο.
Η δοκιμαστική έκφραση του while
βρόχου είναι πάντα αληθινή.
Σε κάθε επανάληψη, ελέγχεται αν το μέγιστο διαιρείται από το n1 και το n2 ελέγχεται.
εάν (ελάχιστο% n1 == 0 && max% n2 == 0) (…)
Εάν αυτή η συνθήκη δοκιμής δεν είναι αληθής, το μέγιστο αυξάνεται 1
και η επανάληψη συνεχίζεται έως ότου η δοκιμαστική έκφραση της if
δήλωσης είναι αληθής.
Το LCM δύο αριθμών μπορεί επίσης να βρεθεί χρησιμοποιώντας τον τύπο:
LCM = (num1 * num2) / GCD
Μάθετε πώς να βρείτε το GCD δύο αριθμών στον προγραμματισμό C.
Υπολογισμός LCM με χρήση GCD
#include int main() ( int n1, n2, i, gcd, lcm; printf("Enter two positive integers: "); scanf("%d %d", &n1, &n2); for (i = 1; i <= n1 && i <= n2; ++i) ( // check if i is a factor of both integers if (n1 % i == 0 && n2 % i == 0) gcd = i; ) lcm = (n1 * n2) / gcd; printf("The LCM of two numbers %d and %d is %d.", n1, n2, lcm); return 0; )
Παραγωγή
Εισαγάγετε δύο θετικούς ακέραιους αριθμούς: 72 120 Το LCM δύο αριθμών 72 και 120 είναι 360.