شروط if
مقدمات
© כל הזכויות שמורות למרכז לחינוך סייבר מיסודה של קרן רש"י ולקרן טראמפ
מבואות
لننطلق؟
إنهاء
أصابع على لوحة المفاتيح
بناء شروط if
التخطيط بمساعدة مخطط
الشروط في الحياة اليومية
لعبة جلوس/وقوف
حملة في محل البيتزا
افتتاحية
تعالوا نقرأ محادثة الواتساب بين أنطونيو وأنطونيا.
لقراءة المحادثة (باللهجة الإيطالية) هل من متطوّع؟ هل من متطوّعة؟
حملة في محل البيتزا!
مهمة
وقبل شهر أطلقنا خدمة التوصيل الجديدة - !PIZZA ToGo
صار عنّا برمجية متطورة لإدارة الطلبات...
بس... عم بتابع معطيات الإرساليات، وشفت إنه عدد طلباتنا الكبيرة قليل....
بس... عم بتابع معطيات الإرساليات، وشفت إنه عدد طلباتنا الكبيرة قليل....
بابا بیتزا
حملة في محل البيتزا!
مهمة
شوف... معقول الإشي إلو علاقة بالحملة الأخيرة اللي عملتها؟
قصدك حملة: �"اشتري 4 صواني بيتزا - واحصل على بيتزا فستق ببلاش"؟
بابا بیتزا
حملة في محل البيتزا!
مهمة
شوف... معقول الإشي إلو علاقة بالحملة الأخيرة اللي عملتها؟
آه أنطونيو، قصدت حملة صواني البيتزا الخضرا الغريبة اللي كنت توزّعها هدية لكل زبون بطلب 4 صواني أو أكتر.
يمكن معك حقّ...
بابا بیتزا
حملة في محل البيتزا!
مهمة
توصيل طلب واحد كبير أفضل إلنا من كتير طلبات صغيرة...
صح، طلب واحد كبير بوفّر علينا التكاليف، بالمقارنة مع كتير طلبات صغيرة.
بابا بیتزا
حملة في محل البيتزا!
مهمة
خلينا نفكر بحملة تانية...
طيب، كيف بدنا نشجع الزباين على الطلبات الكبيرة؟
بابا بیتزا
حملة في محل البيتزا!
نقاش
هل لديكم أفكار لحملات تشجّع الزبائن على إجراء طلبات كبيرة في محل أنطونيا وأنطونيو للبيتزا؟
ماذا سنفعل اليوم؟
لكن كيف يمكننا أن نفحص في برنامج الإرساليات الذي طورناه، ما إذا تمّ طلب أكثر من 5 أطباق؟
لكي نساعد أنطونيا وأنطونيو، علينا تطوير برنامج إرساليات، بحيث يتيح المجال لعدة أنواع من الحملات، مثلًا:�
اضغطوا للإجابة >
اضغطوا للإجابة >
للقيام بذلك، علينا أن نتعلم الشروط :)
ماذا تشمل المعروضة؟
إنهاء
أصابع على لوحة المفاتيح
بناء شروط if
التخطيط بمساعدة مخطط
الشروط في الحياة اليومية
لعبة جلوس/وقوف
حملة في محل البيتزا
جلوس/وقوف بحسب الشروط
لعبة
قبل أن نبدأ في تعلّم الشروط، فيما يلي لعبة افتتاحية بسيطة:
في هذه الفعالية، سنختار في كل مرة شرطًا مختلفًا.
يجب عليكم/ن الجلوس أو الوقوف بحسب الشرط.
جاهزون؟ جاهزات؟
جلوس/وقوف بحسب الشروط
لعبة
جولة 1 من 7
اضغطوا لاختيار مهمّة >
إذا كان اسمكم الشخصي يبدأ بالحرف "أ":
قِفوا
جلوس/وقوف بحسب الشروط
لعبة
جولة 2 من 7
اضغطوا لاختيار مهمّة >
إذا كان اسمكم الشخصي يحتوي على الحرف "ر":
اجلسوا
جلوس/وقوف بحسب الشروط
لعبة
جولة 3 من 7
اضغطوا لاختيار مهمّة >
إذا كان اسمكم الشخصي يحتوي على الحرف "ل":
اجلسوا
جلوس/وقوف بحسب الشروط
لعبة
جولة 4 من 7
اضغطوا لاختيار مهمّة >
إذا كان اسمكم الشخصي يحتوي على الحرف "ب"
أو على الحرف "ي":
قِفوا
جلوس/وقوف بحسب الشروط
لعبة
جولة 5 من 7
اضغطوا لاختيار مهمّة >
إذا كنتم تقفون الآن:
اجلسوا
جلوس/وقوف بحسب الشروط
لعبة
جولة 6 من 7
اضغطوا لاختيار مهمّة >
إذا كنتم تجلسون الآن:
قِفوا
جلوس/وقوف بحسب الشروط
لعبة
الجولة الأخيرة
اضغطوا لاختيار مهمّة >
إذا كان اسمكم الشخصي يحتوي على الحرف "أ" وأيضًا على الحرف "ي":
اجلسوا
ماذا تشمل المعروضة؟
إنهاء
أصابع على لوحة المفاتيح
بناء شروط if
التخطيط بمساعدة مخطط
الشروط في الحياة اليومية
لعبة جلوس/وقوف
حملة في محل البيتزا
الشروط في الحياة اليومية
نقاش
إذا كانت درجة الحرارة أعلى من 40 درجة مئوية:
لن نخرج إلى الرحلة
إذا كان الطول أكبر من 1.30 متر:
نصعد إلى القطار الهوائي
أين نصادف الشروط في الحياة اليومية من حولنا؟
اضغطوا لمزيد من الأمثلة >
ماذا تشمل المعروضة؟
إنهاء
أصابع على لوحة المفاتيح
بناء شروط if
التخطيط بمساعدة مخطط
الشروط في الحياة اليومية
لعبة جلوس/وقوف
حملة في محل البيتزا
في مدينة الملاهي، يُسمح بالصعود إلى القطار الهوائي فقط للأشخاص الذي طولهم أكبر من 1.3 م.�نريد كتابة برنامج يفحص الطول ويطبع رسالة فقط إذا كان يُسمح بالصعود إلى القطار.
لغاية الآن، قمنا بكتابة برامج يتم فيها تنفيذ كل الأوامر بحسب الترتيب. عندما يكون هناك شرط في البرنامج، يمكنه أن يتخطّى بعض الأوامر (بحسب الشرط).
لذلك، قبل أن نبدأ كتابة الكود، من المفضّل أن نخطّط!�مخطط الجريان هو أداة تساعد على التخطيط. تعالوا نرى.
الشرط: التخطيط بمساعدة مخطط جريان
هل الطول أكبر من 1.30؟
استقبِل الطول
اطبع: "يُسمح بالصعود �إلى القطار الهوائي"
لا
نعم
مبنى المخطط:
نبدأ بقراءة المخطط من الأعلى، ونتّبع اتجاه الأسهم
تظهر في المَعين أوامر تهدف إلى "فحص" شرط معيّن
تظهر في المستطيل بقية الأوامر
الشرط:
إذا كان الطول أكبر من 1.30 متر:
يُسمح بالصعود إلى القطار الهوائي
على أي مُدخَلات من المفضل أن نشغل البرنامج لكي نفحصه؟
سنرى أمثلة في الشرائح التالية >
مثال على تشغيل البرنامج: المُدخَل 1.31
توضيح
استقبِل الطول
استقبِل الطول
هل الطول أكبر من 1.30؟
لا
نعم
1.31
هل الطول أكبر من 1.30؟
اطبع: "يُسمح بالصعود �إلى القطار الهوائي"
اطبع: "يُسمح بالصعود �إلى القطار الهوائي"
ينفذ البرنامج الأوامر بحسب الترتيب.
عندما يصل البرنامج إلى الشرط، يقوم بفحص الشرط.
في هذا المثال، الطول هو 1.31 م، لذلك سيطبع البرنامج:
"يُسمح بالصعود إلى القطار الهوائي"
ينفذ البرنامج الأوامر داخل الشرط، ويتابع لأسطر الكود التي تلي الشرط.
إذا كان الجواب "نعم":
ماذا يحدث لو كان الطول الذي يستقبله البرنامج 1.31؟
مثال على تشغيل البرنامج: المُدخَل 1.30
توضيح
استقبِل الطول
استقبِل الطول
هل الطول أكبر من 1.30؟
اطبع: "يُسمح بالصعود �إلى القطار الهوائي"
لا
نعم
1.30
هل الطول أكبر من 1.30؟
عندما يصل البرنامج إلى الشرط، يقوم بفحص الشرط.
إذا كان الجواب "لا":
البرنامج يتخطّى الأوامر داخل الشرط، ويتابع لأسطر الكود التي تلي الشرط بحسب الترتيب.
في هذا المثال، الطول هو 1.30 م، لذلك لن يطبع البرنامج شيئًا!
ماذا يحدث لو كان الطول الذي يستقبله البرنامج 1.30؟
أمثلة على شروط من العالم التكنولوجي
نقاش
إذا ضغطت على "حذف":
سيتم حذف التطبيق
رأينا أنّ هناك شروطًا كثيرة في الواقع من حولنا
لكن، أين توجد شروط من حولنا في الحاسوب/الهاتف الذكي؟
فكِّروا وأعطوا مثالين.
فيما يلي مثال واحد - حذف تطبيق:
اضغطوا لمزيد من الأمثلة >
حذف ال Tik Tok ?
إلغاء
حذف
أمثلة من العالم التكنولوجي
إذا أدخلنا كلمة مرور صحيحة:
يمكننا الدخول إلى الحاسوب
إذا ضغطنا على "حفظ":
سيتم حفظ الملف
إذا ضغطنا على "عدم الحفظ":
لن يتم حفظ الملف
إذا ضغطنا على "X":
سيتم إغلاق النافذة
هل ترغب بحفظ التغييرات في بلا اسم؟
الرسام
حفظ
عدم الحفظ
إلغاء
التخطيط من وراء الكواليس
اضغطوا لعرض مخطط الجريان الملائم للشرط >
الشرط:
إذا كانت النقرة "حذف":
احذف التطبيق
هل النقرة هي "حذف"؟
استقبِل النقرة من المستخدِم
احذف التطبيق
لا
نعم
سلوك هاتفنا أيضًا يبدأ بالتخطيط - �مثلًا في حال حذف تطبيق:
اضغطوا لعرض مخطط الجريان الملائم للشرط >
حذف ال Tik Tok ?
إلغاء
حذف
ماذا تشمل المعروضة؟
إنهاء
أصابع على لوحة المفاتيح
بناء شروط if
التخطيط بمساعدة مخطط
الشروط في الحياة اليومية
لعبة جلوس/وقوف
حملة في محل البيتزا
نكتب شرطًا بالبايثون: if
print("Welcome to OnTop!")
نكتب هنا أمرًا سيتم تنفيذه إذا تحقق الشرط
age > 12
اطبع “!Welcome to OnTop”
هل الجيل أكبر من 12؟
استقبِل الجيل
لا
نعم
اضغطوا لعرض الكود في بايثون >
اضغطوا لعرض الكود في بايثون >
الشرط
age = int(input("Enter your age: "))
# استقبال الجيل
# فحص الجيل) نكتب الشرط هنا)
if
:
مسافة بادئة (فراغ)
نقطتان
المسافة البادئة - ما القصد منها؟
مسافة بادئة (بالإنجليزية Indentation):
المسافة البادئة هي إزاحة السطر المكتوب عن الهوامش.
كل الأوامر داخل الشرط تكون مُزاحة.
الأوامر غير المُزاحة، لن تكون جزءًا من الشرط.
إن لم يكن هناك أيّ أمر مُزاح بعد أمر الـ if،
سنحصل على خطأ! يسمّى الخطأ Indentation Error
�
# استقبال الجيل
age = int(input("Enter your age: "))
# فحص الجيل
if age > 12:
print("Welcome to OnTop!")
الأوامر المُزاحة
هي داخل الشرط
المسافة البادئة - ماذا ؟؟؟؟ ماذا تعني؟؟؟؟
نُمعن النظر في الكود ونجيب عن الأسئلة
سؤال
الإجابة: كل عدد صحيح أكبر من 12�(مثلًا: 15، 107 أو 10000019)�
أي قيمة يمكن إدخالها لكي لا يتحقق الشرط؟
الإجابة: كل عدد صحيح حتى 12 (يشمل)
أي قيمة يمكن إدخالها لكي يتحقق الشرط ويتم طباعة الرسالة؟
# استقبال الجيل
age = int(input("Enter your age: "))
# فحص الجيل
if age > 12:
print("Welcome to OnTop!")
داخل الـ if يمكن أن تكون هناك عدة أوامر
مع أي أجيال يمكن تشغيل البرنامج للتأكد من أنه يعمل كما أردنا؟
# استقبال الجيل
age = int(input("Enter your age: "))
print("Your age is", age)
# فحص الجيل
if age > 12:
print("Welcome to OnTop!")
print("Amazing")
print("Bye")
الأوامر المُزاحة
هي داخل الشرط
سنرى أمثلة في الشرائح التالية >
تشغيل البرنامج مع المُدخَل 12
توضيح
# استقبال الجيل
age = int(input("Enter your age: "))
print("Your age is", age)
# فحص الجيل
if age > 12:
print("Welcome to OnTop!")
print("Amazing")
print("Bye")
12
Enter your age:
Bye
12
Your age is
12
انتبهوا:
الشرط لا يتحقق للمُدخَل 12، لذلك البرنامج يتخطى أوامر الشرط
ماذا يحدث لو شغلنا البرنامج مع المُدخَل 12؟
تشغيل البرنامج مع المُدخَل 1000
توضيح
# استقبال الجيل
age = int(input("Enter your age: "))
print("Your age is", age)
# فحص الجيل
if age > 12:
print("Welcome to OnTop!")
print("Amazing")
print("Bye")
1000
Enter your age:
Your age is 1000
Welcome to OnTop!
Amazing
1000
Bye
هل تعلم؟
في البرامج الحقيقية، لا نسمح طبعًا باستخدام الجيل 1000 كمُدخَل😉
ماذا يحدث لو شغلنا البرنامج مع المُدخَل 1000؟
تعلّمنا عن التخطيط بمساعدة مخطط جريان - �فيما يلي مخطط الجريان الملائم للكود الظاهر في المثال:
# استقبال الجيل
age = int(input("Enter your age: "))
print("Your age is", age)
# فحص الجيل
if age > 12:
print("Welcome to OnTop!")
print("Amazing")
print("Bye")
هل الجيل أكبر من 12؟
اطبع الجيل
اطبع “!Welcome to OnTop”
لا
نعم
اطبع: "Amazing"
استقبِل الجيل
اطبع: "Bye"
طريقة أخرى للتخطيط، هي "العربية البنيوية"
المخطط
"العربية البنيوية"
استقبِل الجيل
اطبع الجيل
إذا كان الجيل أكبر من 12:
اطبع “!Welcome to OnTop”
اطبع "Amazing"
اطبع "Bye"
هل الجيل أكبر من 12؟
اطبع الجيل
اطبع “!Welcome to OnTop”
لا
نعم
اطبع: "Amazing"
استقبِل الجيل
اطبع: "Bye"
قبل أن نبدأ بالبرمجة...
نفكر🧠
نخطط📝
نتوقف✋
ما أهمية التخطيط؟
عدم التخطيط قد يسبّب المشاكل!
والآن، لننتقل إلى سؤال استطلاع!
صوِّتوا في الصف
نقاش
قبل أن نبدأ بالبرمجة، من المفضل أن نخطط :) �أي طريقة تخطيط هي الأنسب لكم/ن - مخطط الجريان أم "العربية البنيوية"؟ صوِّتوا في الصف.
أفضّل التخطيط بواسطة مخطط جريان 0
أفضّل التخطيط بواسطة "العربية البنيوية" 0
تذكروا: �مخطط الجريان و"العربية البنيوية" هما أدوات مساعدة فقط! استخدِموا الطريقة الأنسب والأكثر راحةً لكم/ن :)
تذكروا: �من يصوِّت يؤثِّر!
تحضير للتمرين في كولاب
مخزن الجمل:
قبل أن نبدأ التمرين في كولاب، تعالوا نخطط على ورقة أحد التمارين التي تنتظرنا هناك. استخدِموا في التخطيط الجُمل الظاهرة في مخزن الجمل.�فيما يلي التمرين:
مهمة
استقبِل العدد الثاني
هل المجموع أصغر من 10؟
اطبع: "المجموع صغير"
احسب مجموع العددين
استقبِل العدد الأول
اطبع المجموع
علينا أن نستقبل عددين وأن نحسب مجموعهما.�إذا كان المجموع أصغر من 10، نطبع رسالة بأن المجموع صغير.�في جميع الأحوال نطبع المجموع.
اضغطوا للإجابة >
انتبهوا! يجب أن نفحص ما إذا كان المجموع أصغر من 10.
عندما نكتب البرنامج في البايثون، أي إشارة نستخدم؟
التخطيط بمساعدة مخطط جريان وبالعربية البنيوية
المخطط
"العربية البنيوية"
هل المجموع أصغر من 10؟
استقبِل العدد الأول
استقبِل العدد الثاني
احسب مجموع العددين
اطبع: "المجموع صغير"
اطبع المجموع
نعم
استقبِل العدد الأول
استقبِل العدد الثاني
احسب مجموع العددين
إذا كان المجموع أصغر من 10:
اطبع: "المجموع صغير"
اطبع المجموع
ماذا تشمل المعروضة؟
إنهاء
أصابع على لوحة المفاتيح
بناء شروط if
التخطيط بمساعدة مخطط
الشروط في الحياة اليومية
لعبة جلوس/وقوف
حملة في محل البيتزا
لحظة قبل لوحة المفاتيح
من يشتري بـ 100 شيكل على الأقل، يحصل على تخفيض بقيمة 10 شيكل
أمامكم برنامج يفحص ما إذا كان يمكن الحصول على تخفيض، ويحسب المبلغ للدفع وفقًا لذلك.
جِدوا الأخطاء.
سؤال
اضغطوا لمشاهدة الأخطاء >
اضغطوا لمشاهدة الأخطاء >
# استقبال الجيل
price = int(input("Enter price: "))
# فحص الجيل
if price > 99
print("You will get a discount!")
price = price - 10
print("The total price is:", price)
print("have a nice day!")
جِدوا الأخطاء في الكود التالي
1
2
3
1. خطأ في كتابة الجملة: تنقص نقطتان
2. خطأ في كتابة الجملة: تنقص مسافة بادئة
3. خطأ منطقي: بدون مسافة بادئة، كل مبلغ يحصل على تخفيض
مسافة بادئة = Indentation
IndentationError = خطأ في المسافة البادئة
الكود المصحَّح
# استقبال الجيل
price = int(input("Enter price: "))
# فحص الجيل
if price > 99:
print("You will get a discount!")
price = price - 10
print("The total price is:", price)
print("have a nice day!")
فيما يلي الكود المصحَّح
أصابع على لوحة المفاتيح
يجب تقديم البنود 8-1
ماذا تشمل المعروضة؟
إنهاء
أصابع على لوحة المفاتيح
بناء شروط if
التخطيط بمساعدة مخطط
الشروط في الحياة اليومية
لعبة جلوس/وقوف
حملة في محل البيتزا
ماذا تعلمنا اليوم؟
تلخيص
سنختم بلغزَين.
جاهزون؟ جاهزات؟
ما المشكلة؟
سؤال
# استقبال الجيل
age = int(input("Enter your age: "))
# فحص الجيل
if age > 17:
print("Your age is", age)
print("يمكن التقدم لامتحان السياقة")
اضغطوا للإجابة >
أدخلت الجيل 15، لكن البرنامج طبعَ أنّه يُسمح لي بالتقدم لامتحان السياقة، �ما المشكلة في البرنامج؟
تنقص مسافة بادئة في أمر الطباعة الأخير
اضغطوا للإجابة >
ما هو المُدخَل؟
سؤال
اضغطوا للإجابة >
البرنامج طبعَ: "أمير الصغير يركض" - �ماذا يمكن أن يكون المُدخَل؟
استقبِل عددًا
لا
نعم
هل العدد زوجي؟
اطبع: "أمير الصغير"
اطبع: "يركض"
لا
نعم
هل العدد يقبل القسمة على 3؟
اطبع: "في الصباح إلى الروضة"
العدد زوجي ولا يقبل القسمة على 3. مثلًا:
4، 8، 14، 1004
اضغطوا للإجابة >
إلى اللقاء في الأسبوع القادم!
مقدمات
© כל הזכויות שמורות למרכז לחינוך סייבר מיסודה של קרן רש"י ולקרן טראמפ
מבואות