مسائل محلولة في لغة C
مقدمة حول لغة C
لغة C هي واحدة من أكثر لغات البرمجة شعبية واستخداماً حول العالم. تم تطويرها في أوائل السبعينات، وتتميز بقوتها ومرونتها، مما يجعلها الخيار الأول لكثير من المبرمجين. في هذا المقال، سنتناول بعض المسائل المحلولة التي ستساعدك على فهم أساسيات لغة C وكيفية استخدامها بشكل فعال.
مسألة 1: حساب مجموع الأعداد
لنبدأ بمسألة بسيطة يمكن حلها باستخدام لغة C. الهدف هنا هو حساب مجموع الأعداد من 1 إلى n.
#include <stdio.h>
int main() {
int n, sum = 0;
printf("أدخل عددًا: ");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += i;
}
printf("مجموع الأعداد من 1 إلى %d هو: %d\n", n, sum);
return 0;
}
شرح الكود
في هذا الكود، يقوم البرنامج بطلب إدخال عدد من المستخدم، ثم يحسب مجموع الأعداد من 1 إلى هذا العدد باستخدام حلقة for ويعرض النتيجة.
مسألة 2: تحقق من الأعداد الأولية
المسألة التالية هي التحقق مما إذا كان العدد المدخل هو عدد أولي أم لا.
#include <stdio.h>
int main() {
int num, flag = 0;
printf("أدخل عددًا للتحقق إذا كان أوليًا: ");
scanf("%d", &num);
if (num <= 1) {
printf("%d ليس عددًا أوليًا.\n", num);
} else {
for (int i = 2; i <= num / 2; i++) {
if (num % i == 0) {
flag = 1;
break;
}
}
if (flag == 0) {
printf("%d هو عدد أولي.\n", num);
} else {
printf("%d ليس عددًا أوليًا.\n", num);
}
}
return 0;
}
شرح الكود
في هذا الكود، يتم التحقق من الأعداد الأولية عن طريق التحقق من القواسم. إذا وجدنا أي قاسم، نعتبر العدد ليس أوليًا.
مسألة 3: عكس سلسلة نصية
المسألة الأخيرة التي سوف نتناولها هي عكس محتوى سلسلة نصية.
#include <stdio.h>>
#include <string.h>
int main() {
char str[100], rev[100];
printf("أدخل سلسلة نصية: ");
gets(str);
int len = strlen(str);
for (int i = 0; i < len; i++) {
rev[i] = str[len - i - 1];
}
rev[len] = '\0'; // إضافة نهاية السلسلة
printf("السلسلة المعكوسة هي: %s\n", rev);
return 0;
}
شرح الكود
في هذا الكود، نقوم باستخدام دالة strlen للحصول على طول السلسلة، ثم نقوم بعكس السلسلة باستخدام حلقة for.
استنتاجات
تعلم لغة C يتطلب ممارسة وتجربة، والمسائل المحلولة المذكورة أعلاه هي نقطة انطلاق جيدة. من خلال فهم كيفية كتابة الكود وفحص الأخطاء، يمكنك تحسين مهاراتك في البرمجة بلغة C. التدرب على كتابة كود خاص بك والتطبيق على مشاريع صغيرة سيعزز من فهمك لمبادئ البرمجة.