برنامج لإيجاد العامل المشترك الأكبر (HCF) بين عددين باستخدام لغة C
برنامج لإيجاد العامل المشترك الأكبر (HCF) باستخدام C
العامل المشترك الأكبر (HCF) هو أكبر عدد صحيح يمكن أن يقسم عددين بدون باقي. يُعرف HCF أيضًا باسم GCD (Greatest Common Divisor). في هذا الدرس، سنتعلم كيفية إيجاد HCF لعددين باستخدام لغة C.
مفهوم إيجاد العامل المشترك الأكبر (HCF)
لإيجاد HCF لعددين، نبدأ بالبحث عن أكبر عدد يقسم كلا العددين بالتساوي. هناك العديد من الطرق لحساب HCF، أشهرها استخدام الطريقة الأوروبية (Euclidean Algorithm) التي تعتمد على التكرار.
برنامج لإيجاد HCF لعددين
في البرنامج التالي، سنستخدم حلقة تكرارية لحساب HCF لعددين مدخلين:
#include <stdio.h>
int main() {
int num1, num2, i, hcf;
// طلب إدخال عددين من المستخدم
printf("أدخل رقمين: ");
scanf("%d %d", &num1, &num2);
// إيجاد HCF باستخدام حلقة for
for(i = 1; i <= num1 && i <= num2; i++) {
if(num1 % i == 0 && num2 % i == 0) {
hcf = i;
}
}
// طباعة النتيجة
printf("العامل المشترك الأكبر (HCF) هو: %d\n", hcf);
return 0;
}
الإخراج
أدخل رقمين: 60 48
العامل المشترك الأكبر (HCF) هو: 12
شرح البرنامج
في البرنامج أعلاه:
- طلبنا من المستخدم إدخال عددين.
- استخدمنا حلقة
for
للبحث عن جميع الأعداد التي تقسم كلا العددين بالتساوي. - تم تخزين أكبر عدد يقسم كلا العددين في المتغير
hcf
. - طبعنا القيمة النهائية لـ HCF باستخدام
printf
.
برنامج لإيجاد HCF باستخدام خوارزمية إقليدس
يمكننا أيضًا إيجاد HCF باستخدام خوارزمية إقليدس التي تعتمد على التكرار. الخوارزمية تعمل كالتالي: نستمر في قسمة العدد الأكبر على العدد الأصغر حتى يصبح الباقي صفرًا. في هذه الحالة، يصبح العدد الأصغر هو HCF.
#include <stdio.h>
int main() {
int num1, num2;
// طلب إدخال عددين من المستخدم
printf("أدخل رقمين: ");
scanf("%d %d", &num1, &num2);
// تطبيق خوارزمية إقليدس
while(num1 != num2) {
if(num1 > num2)
num1 -= num2;
else
num2 -= num1;
}
// طباعة النتيجة
printf("العامل المشترك الأكبر (HCF) هو: %d\n", num1);
return 0;
}
الإخراج
أدخل رقمين: 60 48
العامل المشترك الأكبر (HCF) هو: 12
الخاتمة
في هذا الدرس، تعلمنا كيفية إيجاد العامل المشترك الأكبر (HCF) لعددين باستخدام طريقتين مختلفتين: الأولى باستخدام حلقة for
والثانية باستخدام خوارزمية إقليدس. HCF هو مفهوم مهم في الرياضيات ويُستخدم في العديد من التطبيقات البرمجية.
اترك تعليقاً