الدوال والإجراءات (Subroutines) في لغة Pascal: تعريفها واستدعاؤها مع تمارين بكالوريا محلولة — الإعلام الآلي — الثانية ثانوي — المنهاج الجزائري

الدوال والإجراءات (Subroutines) في لغة Pascal: تعريفها واستدعاؤها مع تمارين بكالوريا محلولة — الإعلام الآلي — الثانية ثانوي — المنهاج الجزائري

الأهداف التعليمية:

  • التعرف على مفهوم الدوال والإجراءات في Pascal
  • التمييز بين Function و Procedure
  • تعريف المعاملات (Parameters) بالقيمة وبالعنوان
  • كتابة برامج باستخدام الدوال والإجراءات
  • حل تمارين بكالوريا محلولة

1. مفهوم الدوال والإجراءات

الدوال والإجراءات (Subroutines) هي برامج فرعية تسمح بتقسيم البرنامج الكبير إلى وحدات صغيرة قابلة لإعادة الاستخدام. هذا يسهل البرمجة ويحسن التنظيم.

2. الفرق بين Function و Procedure

الإجراء (Procedure):
– لا يرجع قيمة
– يستخدم لأداء مهمة محددة (طباعة، عرض نتائج)
– الصيغة: procedure name(paramètres);

الدالة (Function):
– ترجع قيمة من نوع محدد
– تستخدم في العمليات الحسابية والمنطقية
– الصيغة: function name(paramètres): type;

3. تعريف واستدعاء الإجراءات

مثال:

procedure AfficherMessage;
begin
  writeln('Bienvenue au programme');
end;

// استدعاء الإجراء
begin
  AfficherMessage;
end.

4. تعريف واستدعاء الدوال

مثال:

function Somme(a, b: Integer): Integer;
begin
  Somme := a + b;
end;

// استدعاء الدالة
var
  x: Integer;
begin
  x := Somme(5, 3);  // x = 8
  writeln('La somme est: ', x);
end.

5. أنواع المعاملات (Paramètres)

بالقيمة (par valeur / by value): يتم نسخ قيمة المعامل ولا يؤثر التعديل داخل الإجراء على المتغير الأصلي.

بالعنوان (par variable / by reference): يستخدم var قبل المعامل، والتعديل يؤثر على المتغير الأصلي.

مثال:

procedure Echange(var a, b: Integer);
var
  temp: Integer;
begin
  temp := a;
  a := b;
  b := temp;
end;

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

التمرين 1: اكتب دالة تحسب عاملي عدد n (Factorial) ثم اكتب برنامجاً لاستدعائها.
الحل:

program Factoriel;
function Fact(n: Integer): Integer;
var
  i, f: Integer;
begin
  f := 1;
  for i := 1 to n do
    f := f * i;
  Fact := f;
end;
begin
  writeln('Factoriel de 5 = ', Fact(5));
end.

التمرين 2: (BAC 2023) اكتب إجراء يقرأ مصفوفة من الأعداد الصحيحة ثم يعرضها بترتيب عكسي.
الحل:

procedure AfficherInverse(var arr: array of Integer; n: Integer);
var
  i: Integer;
begin
  for i := n-1 downto 0 do
    write(arr[i], ' ');
end;

دروس مشابهة:

شاهد أيضا

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

العلوم — التربة — السنة الرابعة ابتدائي تعريف العلوم — التربة — السنة الرابعة ابتدائي …

العلوم — التربة — السنة الثالثة ابتدائي

العلوم — التربة — السنة الثالثة ابتدائي تعريف العلوم — التربة — السنة الثالثة ابتدائي …

علوم — الأغذية المفيدة (تمارين وأمثلة) — السنة الثانية ابتدائي

علوم — الأغذية المفيدة (تمارين وأمثلة) — السنة الثانية ابتدائي تعريف علوم — الأغذية المفيدة …

علوم — التغذية والصحة — السنة الثالثة ابتدائي

علوم — التغذية والصحة — السنة الثالثة ابتدائي تعريف علوم — التغذية والصحة — السنة …

اترك تعليقاً

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

🎓 العد التنازلي لبكالوريا 2026
04 يوماً
:
02 ساعة
:
33 دقيقة
:
30 ثانية

📚 أحدث الدروس

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

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

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

🔢
س5 ابتدائي

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

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

⚛️
3 ثانوي

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

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

🌍
3 ثانوي

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

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

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

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