الإعلام الآلي — البرمجة بلغة C: الدوال الأساسية — الأولى ثانوي (شعب علمية) — بكالوريا — المنهاج الجزائري

مقدمة حول البرمجة بلغة C: الدوال الأساسية

في هذا الدرس المخصص لتلاميذ السنة الأولى ثانوي (شعب علمية)، نقدم لكم شرحاً مفصلاً وشاملاً لـ الدوال الأساسية في لغة C وفق المنهاج الجزائري للبكالوريا. الدوال (Functions) هي وحدات برمجية مستقلة تؤدي مهمة محددة، وتعتبر من أهم مفاهيم البرمجة المهيكلة (Structured Programming). تساعد الدوال على تقسيم البرنامج إلى أجزاء صغيرة قابلة للإدارة وإعادة الاستخدام. لغة C هي لغة برمجة إجرائية قوية ومنتشرة، وهي أساسية في منهاج الإعلام الآلي للشعب العلمية في الجزائر. هذا الدرس مهم جداً في مادة الإعلام الآلي للبكالوريا.

أولاً: المفاهيم الأساسية

الدالة (Function) هي مجموعة من الأوامر المنظمة التي تؤدي مهمة محددة. كل برنامج C يحتوي على دالة رئيسية واحدة على الأقل هي main(). تنقسم الدوال إلى نوعين: دوال مكتبية جاهزة (printf, scanf, sqrt, strlen) ودوال معرفة من قبل المستخدم (User-defined Functions). تركيب الدالة: نوع القيمة الراجعة (return type)، اسم الدالة، المعاملات (parameters) بين قوسين، جسم الدالة بين { }. الدوال قد ترجع قيمة (return value) أو لا ترجع قيمة (void). تمرير المعاملات يكون بالقيمة (pass by value) أو بالمؤشر (pass by pointer). نطاق المتغيرات (Scope): المتغيرات المحلية (Local) داخل الدالة، المتغيرات العامة (Global) خارج جميع الدوال.

ثانياً: الشرح التفصيلي

نبدأ بشرح تركيب الدالة وأجزائها: التصريح (Declaration/Prototype)، التعريف (Definition)، الاستدعاء (Call). نشرح كيفية تعريف دالة بسيطة ترجع مجموع عددين، ثم دالة لا ترجع قيمة وتطبع رسالة. ننتقل إلى تمرير المعاملات: بالقيمة (يتم نسخ القيمة) وبالمؤشر (يتم تمرير عنوان المتغير). نتعلم الفرق بين المتغيرات المحلية والعامة والثابتة (Static). نناقش مفهوم التوابع العودية (Recursive Functions) كتطبيق متقدم. نقدم أمثلة من امتحانات البكالوريا السابقة. يمكنكم مراجعة درس الخوارزميات: المصفوفات للمزيد.

ثالثاً: المفاهيم الأساسية

  • تركيب الدالة: return_type function_name(parameters) { body }
  • التصريح: int sum(int a, int b);
  • التعريف: int sum(int a, int b) { return a + b; }
  • الاستدعاء: int result = sum(5, 3);
  • تمرير بالقيمة: int func(int x) { x = 10; } // لا تؤثر على المتغير الأصلي
  • تمرير بمؤشر: int func(int *x) { *x = 10; } // تؤثر على المتغير الأصلي
  • دالة void: void printMsg() { printf(“Hello”); } // لا ترجع قيمة
  • المتغيرات المحلية: تُعرف داخل الدالة وتكون مرئية فقط داخلها
  • المتغيرات العامة: تُعرف خارج جميع الدوال ومرئية في كل مكان

رابعاً: أمثلة بكالوريا

  • مثال 1: اكتب دالة في لغة C تستقبل عدداً صحيحاً وترجع 1 إذا كان زوجياً و 0 إذا كان فردياً.
  • مثال 2: اكتب دالة تستقبل مصفوفة من الأعداد الصحيحة وحجمها، وترجع مجموع عناصرها.
  • مثال 3: اكتب دالة عودية (Recursive) لحساب عاملي عدد (Factorial) n!.

خامساً: تمارين

  1. اكتب دالة تستقبل عددين وتطبع أكبرهما (دون استخدام if).
  2. اكتب دالة تستقبل نصف قطر دائرة وترجع مساحتها ومحيطها (باستخدام المؤشرات).
  3. اكتب دالة للتحقق مما إذا كان عدد أولياً أم لا.
  4. اكتب دالة عودية لحساب حد n من متتالية فيبوناتشي.
  5. مسألة بكالوريا: برنامج كامل باستخدام الدوال لإدارة مصفوفة.

نصائح للبكالوريا

  • لا تنس كتابة التصريح (Prototype) قبل الدالة main() أو تعريف الدالة قبل استدعائها.
  • تأكد من توافق نوع القيمة الراجعة مع return statement.
  • في التمرير بالمؤشر: استخدم & عند تمرير المتغير و * داخل الدالة.
  • الدوال تجعل البرنامج أكثر تنظيماً وقابلية للقراءة وإعادة الاستخدام.
  • اختبر كل دالة على حدة قبل دمجها في البرنامج الكامل.

الخلاصة

الدوال في لغة C هي أساس البرمجة المهيكلة. إتقان كتابة الدوال واستخدامها (تمرير المعاملات، إرجاع القيم، النطاق) ضروري لاجتياز امتحان البكالوريا في الإعلام الآلي.

الإعلام الآلي — البرمجة بلغة C: الدوال الأساسية — السنة الأولى ثانوي (شعب علمية) — بكالوريا.

? دروس مشابهة

شاهد أيضا

Test Post 12345

Test content

English – Present Continuous for Future Arrangements – BAC Literary Stream

English – Present Continuous for Future Arrangements – BAC Literary Stream The present continuous is …

English – Asking for and Giving Opinions: Advanced – BAC Literary Stream

English – Asking for and Giving Opinions – BAC Literary Stream Expressing opinions is a …

الإعلام الآلي — الذكاء الاصطناعي: تطبيقات عملية — الرابعة متوسط — المنهاج الجزائري

الإعلام الآلي — الذكاء الاصطناعي: تطبيقات عملية — الرابعة متوسط — المنهاج الجزائري في هذا …

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

🎓 العد التنازلي لبكالوريا 2026
01 يوماً
:
03 ساعة
:
40 دقيقة
:
11 ثانية

📚 أحدث الدروس

عرض الكل ←
📖
س3 ابتدائي

التربية الإسلامية — بر الوالدين

فضل بر الوالدين وأهميته في الإسلام

🔢
س5 ابتدائي

الرياضيات — مساحة القرص

حساب مساحة الدائرة — ط × نق²

⚛️
3 ثانوي

الفيزياء — ثنائي القطب RL

تمارين بكالوريا مع الحلول

🌍
3 ثانوي

التاريخ — الحرب العالمية الأولى

الأسباب والنتائج — بكالوريا

📝 بنك الفروض والاختبارات

عرض الكل ←
فروض الفصل الأول جميع المواد — الأولى متوسط
اختبارات الفصل الثاني مع الحلول — الثالثة متوسط
مواضيع بكالوريا مقترحة مع الحلول — 3 ثانوي
مسابقات الأساتذة نماذج وحلول — 2026