أخبار الموقع

السجلات (Records) في لغة Pascal: تعريفها واستخداماتها مع تمارين محلولة — الثانية ثانوي (شعبة تقني رياضي) — الإعلام الآلي

📋 بطاقة الدرس

المادة الإعلام الآلي (Informatique)
المستوى الثانية ثانوي (شعبة تقني رياضي)
الوحدة البرمجة بلغة Pascal — السجلات (Records)

🎯 أهداف التعلم

  • فهم مفهوم السجل (Record) في لغة Pascal وأهميته
  • تعريف نوع سجل باستخدام الكلمة المفتاحية Record
  • التعامل مع حقول السجل (Fields) باستخدام النقطة (.)
  • استخدام السجلات مع المصفوفات لإنشاء قواعد بيانات بسيطة
  • كتابة برامج متكاملة تستخدم السجلات

📍 تمهيد

عندما نريد تخزين بيانات مركبة عن شخص أو منتج، كاسم ورقم هاتف وعنوان، فإننا نحتاج إلى هيكل بيانات يجمع هذه المعلومات المتنوعة في كيان واحد. السجل (Record) في لغة Pascal يتيح لنا ذلك. السجل هو نوع بيانات مركب يجمع عدة عناصر (حقول) قد تكون من أنواع مختلفة (Integer, String, Real, …).

📖 أولاً: تعريف السجل

يتم تعريف السجل باستخدام الكلمة المفتاحية Record داخل Type:

📝 تعريف سجل طالب

Type
  TEtudiant = Record
    Nom: String[30];
    Prenom: String[20];
    Age: Integer;
    NoteMoyenne: Real;
    Adresse: String[50];
  End;

Var
  etudiant1, etudiant2: TEtudiant;

📖 ثانياً: التعامل مع حقول السجل

للوصول إلى حقل معين في السجل، نستخدم النقطة (.) بين اسم المتغير واسم الحقل:

📝 مثال: إدخال وعرض بيانات سجل

Begin
  Write('Enter le nom: ');
  ReadLn(etudiant1.Nom);
  Write('Enter l\'age: ');
  ReadLn(etudiant1.Age);
  Write('Enter la moyenne: ');
  ReadLn(etudiant1.NoteMoyenne);
  
  WriteLn('Nom: ', etudiant1.Nom);
  WriteLn('Age: ', etudiant1.Age);
  WriteLn('Moyenne: ', etudiant1.NoteMoyenne:0:2);
  ReadLn;
End.

📖 ثالثاً: مصفوفة من السجلات

يمكن إنشاء مصفوفة من السجلات لتخزين بيانات مجموعة من العناصر:

📝 مثال: قائمة طلاب

Const
  N = 5;
Type
  TEtudiant = Record
    Nom: String[30];
    Note: Real;
  End;
Var
  etudiants: Array[1..N] of TEtudiant;
  i: Integer;
Begin
  For i := 1 To N Do
  Begin
    Write('Nom etudiant ', i, ': ');
    ReadLn(etudiants[i].Nom);
    Write('Note: ');
    ReadLn(etudiants[i].Note);
  End;
  WriteLn;
  WriteLn('Liste des etudiants:');
  For i := 1 To N Do
    WriteLn(etudiants[i].Nom, ' - ', etudiants[i].Note:0:2);
  ReadLn;
End.

📖 رابعاً: السجلات مع العبارة With

لتسهيل الوصول إلى حقول السجل، نستخدم العبارة With التي تسمح بكتابة أسماء الحقول دون تكرار اسم المتغير:

📝 استخدام With

With etudiant1 Do
Begin
  Nom := 'Ali';
  Prenom := 'Mohamed';
  Age := 17;
End;
// بدلاً من:
// etudiant1.Nom := 'Ali';
// etudiant1.Prenom := 'Mohamed';

✏️ تمرين تطبيقي

عرف سجلاً للمنتجات يحتوي على: رقم المنتج (Integer)، اسم المنتج (String[40])، السعر (Real)، الكمية (Integer). ثم اكتب برنامجاً يقرأ بيانات 3 منتجات ويعرض قيمة المخزون الإجمالي (سعر × كمية لكل منتج).

🟢 انقر هنا لرؤية الحل
Program GestionStock;
Type
  TProduit = Record
    Code: Integer;
    Nom: String[40];
    Prix: Real;
    Quantite: Integer;
  End;
Var
  produits: Array[1..3] of TProduit;
  i: Integer;
  total: Real;
Begin
  For i := 1 To 3 Do
  Begin
    WriteLn('Produit ', i);
    Write('Code: '); ReadLn(produits[i].Code);
    Write('Nom: '); ReadLn(produits[i].Nom);
    Write('Prix: '); ReadLn(produits[i].Prix);
    Write('Quantite: '); ReadLn(produits[i].Quantite);
  End;
  total := 0;
  For i := 1 To 3 Do
    total := total + (produits[i].Prix * produits[i].Quantite);
  WriteLn('Valeur totale du stock: ', total:0:2);
  ReadLn;
End.

💡 خلاصة

السجلات (Records) في Pascal تسمح بتجميع بيانات متنوعة في كيان واحد. يتم تعريفها باستخدام Record...End داخل Type. نصل إلى الحقول باستخدام النقطة (.) أو العبارة With. يمكن دمج السجلات مع المصفوفات لإنشاء قواعد بيانات بسيطة. السجلات أساسية لفهم البرمجة المهيكلة والتحضير لبكالوريا تقني رياضي.

📍 دروس مشابهة

شاهد أيضا

التربية العلمية والتكنولوجية — الجهاز الإخراجي (الكليتان والمثانة والإحليل) — السنة الخامسة إبتدائي — المنهاج الجزائري

الجهاز الإخراجي (الكليتان والمثانة والإحليل) أهداف التعلم: أن يتعرف التلميذ على أعضاء الجهاز الإخراجي أن …

التربية العلمية والتكنولوجية — الجهاز الحركي (العظام والعضلات والمفاصل) — السنة الثالثة إبتدائي — المنهاج الجزائري

الجهاز الحركي (العظام والعضلات والمفاصل) أهداف التعلم: أن يتعرف التلميذ على مكونات الجهاز الحركي أن …

التربية العلمية والتكنولوجية — الألوان من حولنا (التعرف على الألوان في الطبيعة) — السنة الأولى إبتدائي — المنهاج الجزائري

الألوان من حولنا (التعرف على الألوان في الطبيعة) أهداف التعلم: أن يتعرف التلميذ على الألوان …

اللغة الفرنسية — Les moyens de transport (وسائل النقل) — السنة الخامسة إبتدائي — المنهاج الجزائري

‏Les moyens de transport (‏وسائل النقل) ‏Objectifs: Connaître les différents moyens de transport en français …