شرح درس المتغيرات والثوابت اول متوسط الفصل الأول
المتغير اسم يشير إلى قيمة مخزنة في ذاكرة الحاسب، وتتغير قيمته أثناء البرنامج، أما الثابت فقيمة نتفق ألا تتغير.

أهداف الدرس
- يشرح المتغير ويسند إليه قيمًا بالرمز =.
- يطبّق قواعد تسمية المتغيرات.
- يميّز أنواع البيانات int و float و str و bool.
- يستعمل الدالة type() لمعرفة النوع.
- يفهم فكرة الثابت وعرف كتابته بحروف كبيرة.
المفهوم الأساسي
المتغير اسم يشير إلى قيمة مخزنة في ذاكرة الحاسب، وتتغير قيمته أثناء البرنامج، أما الثابت فقيمة نتفق ألا تتغير.
شرح الدرس
تخيّل صندوقًا عليه ملصق «درجتي» وبداخله الرقم ٩٠ ويمكنك لاحقًا أن تضع فيه رقمًا آخر. المتغير في البرمجة هو هذا الصندوق باسمه وقيمته.
المتغير والإسناد
نُسند القيمة إلى المتغير بعلامة المساواة =، ويقرأها الحاسب «ضع القيمة التي على اليمين في الاسم الذي على اليسار».
name = "سارة"
age = 12
print(name)
print(age)يطبع البرنامج سطرين: سارة ثم 12 على التوالي. ويمكن تغيير قيمة المتغير بإسناد قيمة جديدة له:
score = 10
score = score + 5
print(score)تحسب بايثون الطرف الأيمن أولًا فتجد 10 + 5 أي 15 ثم تضعه في score، فيطبع البرنامج 15 على الشاشة.
قواعد تسمية المتغيرات
- يبدأ الاسم بحرف أو بشرطة سفلية _ ولا يبدأ برقم.
- يتكون من حروف إنجليزية وأرقام وشرطة سفلية فقط، ولا يحتوي مسافات.
- تفرّق بايثون بين الحروف الكبيرة والصغيرة، فـ age تختلف عن Age.
- لا يكون الاسم كلمة محجوزة مثل print أو if.
- اختر اسمًا واضحًا يدل على المعنى مثل student_name بدل x.
أنواع البيانات
- int: عدد صحيح مثل 12 أو -3 أو غيرهما.
- float: عدد عشري مثل 1.55 وغيره.
- str: نص بين علامتي اقتباس مثل "الرياض".
- bool: قيمة منطقية إما True أي صح أو False أي خطأ.
تعرض الدالة type() نوع القيمة:
age = 12
height = 1.55
city = "الرياض"
passed = True
print(type(age))
print(type(height))
print(type(city))
print(type(passed))فيكون الناتج بالترتيب: <class 'int'> ثم <class 'float'> ثم <class 'str'> ثم <class 'bool'>.
الثوابت
الثابت قيمة لا نريد تغييرها مثل قيمة π. بايثون لا تمنع تغيير قيمته، لكن عرف المبرمجين أن نكتب اسمه بحروف كبيرة ليعرف القارئ أنه ثابت ولا يغيّره.
PI = 3.14
radius = 5
area = PI * radius * radius
print(area)يطبع البرنامج مساحة دائرة نصف قطرها ٥ وهي 78.5 وحدة مربعة.
علامة = في البرمجة تعني الإسناد لا المساواة الرياضية، فالمساواة للمقارنة لها رمز آخر نتعلمه لاحقًا.
نشاط تعليمي
التطبيق الأول
اكتب برنامجًا يخزّن اسم مدرستك وعدد طلاب فصلك في متغيرين ثم يطبعهما.
متغير نصي بين علامتي اقتباس ومتغير رقمي وأمرا print.
أن ينشئ الطالب متغيرات ويطبعها.
الموقف الثاني
ما نوع القيمة 3.5 وما نوع القيمة "3.5"؟
الأولى float والثانية str لأنها بين علامتي اقتباس.
أن يميّز الطالب أنواع البيانات.
المسألة الثالثة
أي الأسماء صحيح لمتغير: 2name أم name2 أم my name؟
name2 فقط، لأن الأول يبدأ برقم والثالث فيه مسافة.
أن يطبّق الطالب قواعد التسمية.
ملاحظات مهمة
- 1المتغير اسم لقيمة يمكن أن تتغير.
- 2تفرّق بايثون بين الحروف الكبيرة والصغيرة في الأسماء.
- 3النص يوضع بين علامتي اقتباس وبدونهما يُعدّ اسم متغير.
- 4الثابت قيمة نتفق على عدم تغييرها ونكتب اسمه بحروف كبيرة.
أخطاء شائعة
- ✗ خطأكتابة 2name = 5.✓ الصواب: لا يبدأ الاسم برقم، فنكتب name2 = 5.
- ✗ خطأالظن أن "12" عدد.✓ الصواب: القيمة بين علامتي اقتباس نص من النوع str.
+عرض جميع الأخطاء (3) ←إخفاء الأخطاء الإضافية
- ✗ خطأكتابة my name = "سارة".✓ الصواب: لا مسافات في الاسم، فنكتب my_name.
ملخص الدرس
- المتغير اسم لقيمة نسندها بالرمز =.
- أنواع البيانات الأساسية: int و float و str و bool ونعرفها بـ type().
- للتسمية قواعد: لا رقم في البداية ولا مسافات.
- الثابت يُكتب اسمه بحروف كبيرة مثل PI = 3.14.
هل أتقنت الدرس؟اختبر نفسك من خلال اختبار قصير من عدة أسئلة.