📘 بطاقة الدرس
| المادة |
الإعلام الآلي |
| المستوى |
الأولى ثانوي (شعبة تقني رياضي) |
| الوحدة |
الخوارزميات والبرمجة — البرمجة بلغة Pascal |
| المدة الزمنية |
حصتان (ساعتان) |
🎯 أهداف التعلم
- التعرف على هيكل البرنامج في لغة Pascal
- التعرف على مفهوم المتغيرات والثوابت وأنواع البيانات
- تمييز العمليات الحسابية والمنطقية والعلائقية
- كتابة برامج بسيطة باستخدام عمليات الإدخال والإخراج
- تطبيق المفاهيم عبر تمارين محلولة
🔍 تمهيد
بعد أن تعلمنا مفهوم الخوارزمية وطرق تمثيلها بالمخططات الانسيابية والشيفرة الوصفية في الدرس السابق، حان الوقت لتحويل هذه الخوارزميات إلى برامج حاسوبية قابلة للتنفيذ. تعد لغة Pascal واحدة من أهم اللغات التعليمية المستخدمة في المنهاج الجزائري لتعلم أساسيات البرمجة، وهي لغة بسيطة ومنظمة تساعد على فهم المفاهيم البرمجية الأساسية.
💻 أولاً: هيكل البرنامج في لغة Pascal
يتكون أي برنامج مكتوب بلغة Pascal من الأجزاء التالية:
- رأس البرنامج (Program Heading): يبدأ بكلمة
Program متبوعة باسم البرنامج.
- قسم الإعلانات (Declaration Section): وفيه نصرح عن:
Uses — استيراد المكتبات (مثل Crt)
Const — تعريف الثوابت
Var — تعريف المتغيرات
Type — تعريف أنواع بيانات جديدة
- قسم الأوامر (Statement Section): ويبدأ بـ
Begin وينتهي بـ End. (بنقطة).
📝 مثال 1: برنامج ترحيب بسيط
Program HelloWorld;
Uses Crt;
Var
name: String;
Begin
ClrScr;
Write('أدخل اسمك: ');
ReadLn(name);
WriteLn('مرحباً بك ', name, ' في عالم البرمجة!');
ReadLn;
End.
الشرح:
Program HelloWorld; — اسم البرنامج
Uses Crt; — استيراد مكتبة التعامل مع الشاشة
Var name: String; — تعريف متغير من نوع نصي
Write() — طباعة نص على الشاشة (بدون سطر جديد)
WriteLn() — طباعة نص ثم الانتقال لسطر جديد
ReadLn() — قراءة قيمة من المستخدم
📊 ثانياً: أنواع البيانات الأساسية في Pascal
| النوع |
الكلمة المفتاحية |
الوصف |
مثال |
| عدد صحيح |
Integer |
-32768 إلى 32767 |
Var age: Integer; |
| عدد حقيقي |
Real |
أعداد عشرية |
Var moy: Real; |
| حرف |
Char |
حرف واحد |
Var rep: Char; |
| نص |
String |
سلسلة محرفية |
Var nom: String; |
| منطقي |
Boolean |
True أو False |
Var ok: Boolean; |
| عدد صحيح طويل |
LongInt |
-2147483648 إلى 2147483647 |
Var big: LongInt; |
📝 ثالثاً: الثوابت (Constants)
الثابت هو قيمة لا تتغير أثناء تنفيذ البرنامج، ويعرف باستخدام Const:
Program ConstDemo;
Const
Pi = 3.14159;
Max = 100;
Var
r, area: Real;
Begin
Write('أدخل نصف القطر: ');
ReadLn(r);
area := Pi * r * r;
WriteLn('مساحة الدائرة = ', area:0:2);
ReadLn;
End.
🧮 رابعاً: العمليات في Pascal
1. العمليات الحسابية:
| العملية |
الرمز |
مثال |
النتيجة |
| الجمع |
+ |
5 + 3 |
8 |
| الطرح |
- |
10 - 4 |
6 |
| الضرب |
* |
6 * 7 |
42 |
| القسمة الحقيقية |
/ |
10 / 3 |
3.3333 |
| القسمة الصحيحة |
Div |
10 Div 3 |
3 |
| باقي القسمة |
Mod |
10 Mod 3 |
1 |
2. العمليات العلائقية (المقارنة):
| العملية |
الرمز |
المعنى |
| = |
يساوي |
5 = 5 ← True |
| <> |
لا يساوي |
5 <> 3 ← True |
| < |
أصغر من |
3 < 5 ← True |
| > |
أكبر من |
7 > 2 ← True |
| <= |
أصغر أو يساوي |
5 <= 5 ← True |
| >= |
أكبر أو يساوي |
6 >= 4 ← True |
3. العمليات المنطقية:
| العملية |
الرمز |
المعنى |
| And |
و (الشرطان معاً) |
(5 > 3) And (2 < 4) ← True |
| Or |
أو (أحدهما على الأقل) |
(5 < 3) Or (2 < 4) ← True |
| Not |
النفي (عكس القيمة) |
Not (5 < 3) ← True |
📥📤 خامساً: عمليات الإدخال والإخراج
| التعليمة |
الوظيفة |
مثال |
ReadLn(variable); |
قراءة قيمة من لوحة المفاتيح |
ReadLn(age); |
Write('text'); |
طباعة نص دون سطر جديد |
Write('Enter number: '); |
WriteLn('text'); |
طباعة نص مع سطر جديد |
WriteLn('Hello'); |
📝 سادساً: التنسيق في الطباعة
WriteLn(value:total_width:decimal_places);
// مثال:
WriteLn(area:0:2); // يطبع رقمين بعد الفاصلة
📝 مثال 2: تحويل درجة الحرارة من Celsius إلى Fahrenheit
Program Temperature;
Var
c, f: Real;
Begin
Write('أدخل درجة الحرارة بالسيلسيوس: ');
ReadLn(c);
f := (c * 9 / 5) + 32;
WriteLn(c:0:2, '°C = ', f:0:2, '°F');
ReadLn;
End.
✏️ تمرين تطبيقي
التمرين: اكتب برنامجاً بلغة Pascal يقرأ ثلاثة أعداد صحيحة (a, b, c) ويحسب:
- المجموع: S = a + b + c
- المعدل: Moy = S / 3
- الجداء: P = a * b * c
🟢 انقر هنا لرؤية الحل
Program Calculate;
Var
a, b, c, S: Integer;
P: LongInt;
Moy: Real;
Begin
Write('أدخل العدد الأول: '); ReadLn(a);
Write('أدخل العدد الثاني: '); ReadLn(b);
Write('أدخل العدد الثالث: '); ReadLn(c);
S := a + b + c;
P := a * b * c;
Moy := S / 3;
WriteLn('المجموع = ', S);
WriteLn('الجداء = ', P);
WriteLn('المعدل = ', Moy:0:2);
ReadLn;
End.
📌 ملخص الدرس
- يتكون برنامج Pascal من: رأس البرنامج → قسم الإعلانات (Uses, Const, Var, Type) → Begin … End.
- أنواع البيانات الأساسية: Integer, Real, Char, String, Boolean, LongInt.
- الثوابت (Const) لا تتغير قيمتها أثناء التنفيذ.
- المتغيرات (Var) يمكن أن تتغير قيمتها وتُصرّح بنوعها.
- العمليات: حسابية (+ – * / Div Mod) + علائقية (= <> < > <= >=) + منطقية (And Or Not).
📍 دروس مشابهة: