English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا المثال، ستتعلم كيفية حساب LCM (أكبر مشترك أولاً) للعددين المدخلين من قبل المستخدم.
لفهم هذا المثال، يجب أن تكون على علم بما يليبرمجة Cالموضوع:
LCM للعددين الصحيحين n1 وn2 هو أكبر عدد صحيح يمكن تقسيمه بشكل كامل بواسطة n1 وn2 (بدون بقايا). على سبيل المثال، LCM للأعداد 72 و120 هو 360.
#include <stdio.h> int main() { int n1, n2, min; printf("ادخل عددين إيجابيين: "); scanf("%d %d", &n1, &n2); // أكبر قيمة بين n1 وn2 يتم تخزينها في min min = (n1 > n2) ? n1 : n2; while (1) { إذا (min % n1 == 0 && min % n2 == 0) { printf("LCM لـ %d و%d هو %d.", n1, n2, min); break; } ++min; } return 0; }
نتيجة الإخراج
ادخل عددين إيجابيين: 72 120 LCM لـ 72 و120 هو 360.
في هذا البرنامج، يتم تخزين الأعداد الصحيحة المدخلة من قبل المستخدم في المتغيرات n1 وn2.
أكبر قيمة بين n1 وn2 يتم تخزينها في min، ولا يمكن أن يكون LCM للعددين أقل من min.
تعبير�试 الحالة في循环 while دائمًا صحيح.
في كل تكرار، يتم التحقق من أن min يمكن أن يتم تقسيمه بشكل كامل بواسطة n1 وn2.
إذا (min % n1 == 0 && min % n2 == 0) { ... }
إذا كانت هذه الشروط غير صحيحة، فإن min سيرتفع 1، ويستمر في التكرار حتى تصبح تعبير�试 الحالة في جملة if صحيحًا.
يمكنك أيضًا العثور على LCM للعددين التاليين باستخدام الصيغة التالية:
LCM = (num1 * num2) / GCD
فهم كيفية العثور على ذلك في برمجة Cأكبر مشترك أولاً للعددين.
#include <stdio.h> int main() { int n1, n2, i, gcd, lcm; printf("ادخل عددين إيجابيين: "); scanf("%d %d", &n1, &n2); للمحصول على i = 1; i <= n1 && i <= n2; ++i) { // التحقق من أن i هو عامل مشترك للعددين إذا كان (n1 % i == 0 && n2 % i == 0) gcd = i; } lcm = (n1 * n2) / gcd; printf("LCM لعددين %d و%d هو %d.", n1, n2, lcm); return 0; }
نتيجة الإخراج
أدخل عددين إيجابيين: 78 150 LCM لعددين 78 و150 هو 1950.