Download as pdf or txt
Download as pdf or txt
You are on page 1of 20

‫التسجيالت‬

Les Enregistrements
‫العنارص‬
‫متهيد‬ ‫‪.1‬‬
‫تعريف التسجيةل‬ ‫‪.2‬‬
‫الترصحي‬ ‫‪.3‬‬
‫العمليات املمكنة‬ ‫‪.4‬‬
‫التعلمية ‪Avec‬‬ ‫‪.5‬‬
‫متهيد‬ ‫‪.1‬‬
‫من املعلوم أن بىن املعطيات نوعان‪:‬‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫‪ .1‬متجانسة (‪ :)Homogène‬اذا اكنت البنية حتوي متغريات من نفس المنط‬ ‫الترصحي‬ ‫‪.3‬‬
‫‪ .2‬غري متجانسة (‪ :)Hétérogène‬اذا اكنت البنية حتوي متغريات متلفة أمناط‬ ‫العمليات املمكنة‬ ‫‪.4‬‬
‫التعلمية ‪Avec‬‬ ‫‪.5‬‬
‫ومن بني البىن الغري متجانسة نذكر‪:‬‬
‫التسجيالت ‪Les Enregistrement‬‬

‫سنتعرف يف هذا ادلرس عىل ماهية التسجيالت وكيفية التعامل معها‬


‫يه بنية غري متجانسة تسمح بتجميع عدد معلوم من البياانت )أو عنارص) متلفة‬ ‫متهيد‬ ‫‪.1‬‬
‫المناط حتت مسمى واحد يدعى التسجيةل‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫العنارص املكونة للتسجيةل تدعى احلقول ‪ Champs‬للك مهنا منط خاص به‬ ‫الترصحي‬ ‫‪.3‬‬
‫كام هو موحض يف الشلك املوايل‪:‬‬ ‫العمليات املمكنة‬ ‫‪.4‬‬
‫التسجيةل‬ ‫التعلمية ‪Avec‬‬ ‫‪.5‬‬

‫‪Champ 1 Champ 2 Champ 3 ………….. Champ n‬‬

‫احلقول ‪Champs‬‬
‫مثال‪:‬‬ ‫متهيد‬ ‫‪.1‬‬
‫نريد معاجلة معلومات املرتبص ‪ Stag‬التالية‪:‬‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫اللقب ‪ .‬العمر ‪ .‬العنوان‬ ‫الامس ‪.‬‬ ‫الترصحي‬ ‫‪.3‬‬
‫العمليات املمكنة‬ ‫‪.4‬‬
‫التسجيةل ‪Stag :‬‬ ‫التعلمية ‪Avec‬‬ ‫‪.5‬‬

‫‪Nom‬‬ ‫‪Prenom‬‬ ‫‪Age‬‬ ‫‪Adresse‬‬

‫احلقول ‪Champs‬‬
‫الترصحي‬ ‫متهيد‬ ‫‪.1‬‬
‫هناك طريقتان للترصحي‬ ‫الترصحي ‪:‬‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫‪ (1‬الترصحي املبارش ‪:‬‬ ‫الترصحي‬ ‫‪.3‬‬
‫لتكن ‪ E‬تسجيةل مكونة من ‪ n‬حقل للك مهنا منط خاص به‪ .‬يمت الترصحي‬ ‫العمليات املمكنة‬ ‫‪.4‬‬
‫ابلتسجيةل ‪ E‬اكلآيت‪:‬‬ ‫التعلمية ‪Avec‬‬ ‫‪.5‬‬
‫‪Var E : Enregistrement‬‬
‫‪Champ 1 : Type 1‬‬
‫امس التسجيةل‬ ‫‪Champ 2 : Type 2‬‬ ‫أمناط احلقول‬
‫…‬
‫‪Champ n : Type n‬‬
‫‪ Fin‬أسامء احلقول‬
‫الترصحي‬ ‫متهيد‬ ‫‪.1‬‬
‫املثال السابق‪ :‬نريد معاجلة معلومات املرتبص ‪ Stag‬التالية‪:‬‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫الامس ‪ .‬اللقب ‪ .‬العمر ‪ .‬العنوان‬ ‫الترصحي‬ ‫‪.3‬‬
‫‪Var Stag : Enregistrement‬‬ ‫العمليات املمكنة‬ ‫‪.4‬‬
‫]‪Nom : Chaine [25‬‬ ‫التعلمية ‪Avec‬‬ ‫‪.5‬‬
‫]‪Prenom : Chaine [25‬‬
‫‪Age : Entier‬‬
‫]‪Adresse : Chaine [50‬‬
‫‪Fin‬‬
‫]‪ Chaine [n‬سلسةل رموز مكونة من ‪ n‬رمز كقىص حد‬ ‫مالحظة‪:‬‬
‫الترصحي‬ ‫متهيد‬ ‫‪.1‬‬
‫تعريف التسجيةل‬ ‫‪.2‬‬
‫احلقول اليت لها نفس المنط ميكن مجعها يف نفس السطر‪:‬‬ ‫مالحظة ‪:‬‬ ‫الترصحي‬ ‫‪.3‬‬
‫العمليات املمكنة‬ ‫‪.4‬‬
‫‪Var Stag : Enregistrement‬‬ ‫التعلمية ‪Avec‬‬ ‫‪.5‬‬
‫]‪Nom, Prenom : Chaine [25‬‬
‫‪Age : Entier‬‬
‫]‪Adresse : Chaine [50‬‬
‫‪Fin‬‬
‫الترصحي‬ ‫متهيد‬ .1
: ‫ اكلآيت‬E ‫ يمت الترصحي ابلتسجيةل‬: Pascal ‫يف لغة‬ ‫تعريف التسجيةل‬ .2
Var E : Record
Champ 1 : Type 1; ‫الترصحي‬ .3
Champ 2 : Type 2; ‫العمليات املمكنة‬ .4

Champ n : Type n; Avec ‫التعلمية‬ .5
End;
Var Stag : Record :‫املثال السابق‬
Nom, Prenom : String [25] ;
Age : Integer ;
Adresse : String [50];
End;
‫الترصحي‬ ‫متهيد‬ ‫‪.1‬‬
‫‪ (2‬الترصحي ابلمنط ‪ :‬يمت الترصحي أوال بمنط جديد مث ابلتسجيةل ‪ E‬اكلآيت‪:‬‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫‪Type Nom _Type = Enregistrement‬‬ ‫الترصحي‬ ‫‪.3‬‬
‫‪Champ 1 : Type 1‬‬ ‫العمليات املمكنة‬ ‫‪.4‬‬
‫امس المنط اجلديد‬ ‫‪Champ 2 : Type 2‬‬ ‫أمناط احلقول‬ ‫التعلمية ‪Avec‬‬ ‫‪.5‬‬
‫…‬
‫أسامء احلقول‬ ‫‪Champ n : Type n‬‬
‫‪Fin‬‬
‫‪Var E : Nom_Type‬‬

‫امس التسجيةل‬ ‫امس المنط اجلديد‬


‫الترصحي‬ ‫متهيد‬ ‫‪.1‬‬
‫املثال السابق‪ :‬نريد معاجلة معلومات املرتبص ‪ Stag‬التالية‪:‬‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫الامس ‪ .‬اللقب ‪ .‬العمر ‪ .‬العنوان‬ ‫الترصحي‬ ‫‪.3‬‬
‫‪Type Stagiaire = Enregistrement‬‬ ‫العمليات املمكنة‬ ‫‪.4‬‬
‫]‪Nom, Prenom : Chaine [25‬‬ ‫التعلمية ‪Avec‬‬ ‫‪.5‬‬
‫‪Age : Entier‬‬
‫]‪Adresse : Chaine [50‬‬
‫‪Fin‬‬
‫‪Var Stag : Stagiaire‬‬
‫الترصحي‬ ‫متهيد‬ ‫‪.1‬‬
‫يف لغة ‪ : Pascal‬يمت الترصحي ابلمنط اكلآيت ‪:‬‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫الترصحي‬ ‫‪.3‬‬
‫‪Type Nom _Type = Record‬‬
‫; ‪Champ 1 : Type 1‬‬ ‫العمليات املمكنة‬ ‫‪.4‬‬
‫; ‪Champ 2 : Type 2‬‬ ‫التعلمية ‪Avec‬‬ ‫‪.5‬‬
‫…‬
‫; ‪Champ n : Type n‬‬
‫;‪End‬‬
‫; ‪Var E : Nom_Type‬‬
‫الترصحي‬ ‫متهيد‬ ‫‪.1‬‬
‫املثال السابق‪ :‬نريد معاجلة معلومات املرتبص ‪ Stag‬التالية‪:‬‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫الامس ‪ .‬اللقب ‪ .‬العمر ‪ .‬العنوان‬ ‫الترصحي‬ ‫‪.3‬‬
‫‪Type Stagiaire = Record‬‬ ‫العمليات املمكنة‬ ‫‪.4‬‬
‫; ]‪Nom, Prenom : String[25‬‬ ‫التعلمية ‪Avec‬‬ ‫‪.5‬‬
‫; ‪Age : Integer‬‬
‫;]‪Adresse : String[50‬‬
‫;‪End‬‬
‫; ‪Var Stag : Stagiaire‬‬
‫العمليات املمكنة ‪:‬‬ ‫متهيد‬ ‫‪.1‬‬
‫كي متغري من املتغريات ميكن اجراء معلية القراءة أو الكتابة أو الاس ناد‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫عىل حقول التسجيةل‪.‬‬ ‫الترصحي‬ ‫‪.3‬‬
‫وللوصول اىل أي حقل من احلقول نس تخدم القاعدة التالية ‪:‬‬ ‫العمليات املمكنة‬ ‫‪.4‬‬
‫‪Nom_Enregistrement . Nom _ Champ‬‬ ‫التعلمية ‪Avec‬‬ ‫‪.5‬‬

‫امس التسجيةل‬ ‫امس احلقل‬


‫يف لغة ‪: Pascal‬‬
‫; ‪Nom_Enregistrement . Nom _ Champ‬‬
‫أمثةل‪:‬‬
‫ملء أو قراءة احلقل ‪ Nom‬من التسجيةل ‪: Stag‬‬ ‫متهيد‬ ‫‪.1‬‬
‫اخلوارزمية‬ ‫لغة ‪Pascal‬‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫)‪Lire ( Stag . Nom‬‬ ‫; )‪Read ( Stag . Nom‬‬ ‫الترصحي‬ ‫‪.3‬‬
‫كتابة أو عرض حمتوى احلقل ‪ Prenom‬من التسجيةل ‪: Stag‬‬ ‫العمليات املمكنة‬ ‫‪.4‬‬
‫التعلمية ‪Avec‬‬ ‫‪.5‬‬
‫اخلوارزمية‬ ‫لغة ‪Pascal‬‬
‫)‪Ecrire ( Stag . Prenom‬‬ ‫; )‪Write ( Stag . Prenom‬‬
‫اس ناد القمية ‪ 30‬للحقل ‪ Age‬من التسجيةل ‪: Stag‬‬
‫اخلوارزمية‬ ‫لغة ‪Pascal‬‬
‫‪Stag . Age  30‬‬ ‫; ‪Stag . Age := 30‬‬
:‫تطبيق‬
: Stag ‫أكتب خوارزمية تقوم بقراءة وعرض حمتوى احلقول التسجيةل‬ ‫متهيد‬ .1
Algorithme Exemple
‫تعريف التسجيةل‬ .2
Var Stag : Enregistrement ‫الترصحي‬ .3
Nom, Prenom : Chaine [25] ‫العمليات املمكنة‬ .4
Age : Entier
Adresse : Chaine [50]
Avec ‫التعلمية‬ .5
Fin
Début
Lire ( Stag.nom , Stag.Prenom, Stag.Age , Stag.Adresse )
Ecrire ( Stag.nom , Stag.Prenom, Stag.Age , Stag.Adresse )
Fin
: Pascal ‫يف لغة‬
‫متهيد‬ .1
Program Exemple ;
Var Stag : record ‫تعريف التسجيةل‬ .2
Nom, Prenom : string [25]; ‫الترصحي‬ .3
Age : Integer ; ‫العمليات املمكنة‬ .4
Adresse : string[50];
End; Avec ‫التعلمية‬ .5
begin
read (Stag.nom , Stag.Prenom, Stag.Age , Stag.Adresse);
writeln (Stag.nom , Stag.Prenom, Stag.Age , Stag.Adresse);
End.
‫لتفادي الاس تعامل املتكرر المس التسجيةل نس تخدم التعلمية ‪ Avec‬كام ييل‪:‬‬ ‫متهيد‬ ‫‪.1‬‬
‫امس التسجيةل‬ ‫تعريف التسجيةل‬ ‫‪.2‬‬
‫‪Avec Nom_Enregistrement Faire‬‬ ‫الترصحي‬ ‫‪.3‬‬
‫‪Instructions‬‬ ‫العمليات املمكنة‬ ‫‪.4‬‬
‫مجموعة التعلاميت‬
‫‪Fin Faire‬‬ ‫التعلمية ‪Avec‬‬ ‫‪.5‬‬
‫‪With Nom_Enregistrement Do‬‬ ‫يف لغة ‪: Pascal‬‬
‫‪Begin‬‬
‫‪Instructions‬‬
‫;‪End‬‬
Algorithme Exemple :‫التطبيق السابق‬
‫متهيد‬ .1
Var Stag : Enregistrement
Nom, Prenom : Chaine [25] ‫تعريف التسجيةل‬ .2
Age : Entier ‫الترصحي‬ .3
Adresse : Chaine [50] ‫العمليات املمكنة‬ .4
Fin
Début Avec ‫التعلمية‬ .5
Avec Stag Faire
Lire ( nom , Prenom, Age , Adresse )
Ecrire (nom , Prenom, Age , Adresse )
Fin Faire
Fin
Program Exo ; : Pascal ‫يف لغة‬
Var Stag : record ‫متهيد‬ .1
Nom, Prenom : string [25]; ‫تعريف التسجيةل‬ .2
Age : Integer ; ‫الترصحي‬ .3
Adresse : string[50];
End; ‫العمليات املمكنة‬ .4
Begin Avec ‫التعلمية‬ .5
With Stag Do
Begin
read (nom , Prenom, Age , Adresse );
writeln (nom , Prenom, Age , Adresse );
End;
End.

You might also like