اتخاذ القرارات - التقنية الرقمية 1 - أول ثانوي
القسم الأول
الوحدة الأولى: أساسيات علم الحاسب
الوحدة الثانية: العمل عبر الإنترنت
الوحدة الثالثة: البرمجة باستخدام لغة ترميز النص التشعبي
القسم الثاني
الوحدة الأولى: معالجة الصور المتقدمة
الوحدة الثانية: التقنية والحياة
الوحدة الثالثة: البرمجة باستخدام لغة ترميز النص التشعبي (HTML)
القسم الثالث
الوحدة الأولى: مستندات ونماذج وتقارير الأعمال
الوحدة الثانية: شبكات الحاسب
الوحدة الثالثة: البرمجة بواسطة المايكروبت
444 الدرس الثالث اتخاذ القرارات رابط الدرس الرقمي www.ien.edu.sa في معظم المقاطع البرمجية التي أنشأتها حتى الآن تم تنفيذ الأوامر بالتتابع واحدا تلو الآخر، ولكن في بعض الأحيان يكون ترتيب عمليات التنفيذ وفقًا لطبيعة المشكلة. ستتعلم في هذا الدرس كيفية إنشاء مقاطع برمجية تستجيب لمدخلات المستخدم أثناء تنفيذها وتعطي نتائج مختلفة لمدخلات مختلفة. لتحقيق ذلك، ستتعرف على أنواع المعاملات والمستشعرات الشرطية. المعاملات الشرطية في بايثون تُستخدم المعاملات الشرطية لاتخاذ القرارات في البرمجة، حيث تقارن بين القيم وتُعيد نتيجة واحدة من اثنتين : صواب أو خطأ. يمكنك في الشكل المجاور التعرف على المعاملات الشرطية في بايثون المعامل || Λ V Y || المعنى يساوي أكبر من أصغر من أكبر من أو يساوي أصغر من أو يساوي لا يساوي عندما تريد اتخاذ قرار في بايثون، فإنك تستخدم جملة if. ستجد أوامر if في مايكروبت في فئة أوامر المنطق .(Logic). هناك ثلاث طرق للتعبير عن جملة كن حذرًا عند استخدام الأقواس، وتذكر أنه يجب إغلاق كل قوس يتم فتحه. if كما في الشكل أدناه: أنواع الجمل الشرطية : الشرط if العبارة : الشرط if : الشرط if لاحظ أن النقطتين (:) العبارة 1 العبارة 1 اللتين تليان التعبير الشرطي ضروریتان else: elif: العبارة 2 العبارة 2 else: العبارة 3 : البته شرط if معلومة بارة تجمع جملة if ...elif... else بين جملة if وجملة if...else. وزارة التعليم Ministry of Education 2024-1446
المعاملات الشرطية في بايثون
أنواع الجمل الشرطية
جملة if الشرطية البسيطة في جملة if البسيطة. إذا تحقق الشرط فستنفّذ العبارة (العبارات) التي تتبع if. إذا لم يتحقق الشرط فلن تنفّذ العبارة (العبارات). تستخدم بايثون المسافة البادئة للإشارة إلى العبارات المعتمدة على تحقق الشرط. المخطط الانسيابي للجملة الشرطية صواب العبارة حان الوقت لتستعرض مثالًا. المخطط الانسيابي للمقطع البرمجي صواب اعرض النص "a أكبر من b" ("a is greater than b") البداية a=100 b=20 a>b النهاية خطأ تحقق الشرط خطأ 445 وزارة التعليم Ministry of Education 2024-1446
جمل If الشرطية البسيطة
446 للمقارنة بين متغيرين > عَرّف المتغير a وعيّن قيمته إلى 1100 > عَرّف المتغير b وعيّن قيمته إلى 220 > اضغط على فئة Logic المنطق). > اسحب وأفلت دالة if اكتب الشرط كالتالي: ab. @ من فئة Basic أساسي)، اسحب وأفلت أمر show string إظهار السلسلة)، واكتب داخل النص جملة " a is greater than" (" أكبر من . . . Blocks Python ? Microsoft 1 a = 100 1 Search... 2 2 b = 20 Basic 4 3 if a > b: 4 basic.show_string("a is greater than b")| 5 جملة if ... else الشرطية العبارة الشرط O Input O Music Led Radio C Loops Logic 3 عند استخدامك جملة if ... else الشرطية. إذا تحقق الشرط، فستنفّذ العبارة (العبارات التي تتبع if ، أما إذا لم يتحقق الشرط، فستنفّذ العبارة (العبارات الموجودة ضمن شرط آخر. كما في الحالة السابقة، يتم استخدام المسافة البادئة للإشارة إلى العبارات التي ستنفّذ كل مرة. المخطط الانسيابي للمقطع البرمجي صواب خطأ تحقق الشرط تظهر العبارة 1 عند تحقق الشرط تظهر العبارة 2 عند عدم تحقق الشرط : الشرط if العبارة 1 else: العبارة 2 وزارة التعليم Ministry of Education 2024-1446
للمقارنة بين متغيرين
جملة if...else الشرطية
وإليك مثال: أنشئ المقطع البرمجي التالي. ستجد الأمر if ... else في فئة أوامر المنطق (Logic). المخطط الانسيابي للمقطع البرمجي جملة If جملة else صواب اعرض النص "a أكبر من b" البداية a=100 b=200 a>b خطأ اعرض النص "b أكبر من أو يساوي a " ("b is greater than or equal to a") ("a is greater than b") ? Microsoft النهاية Python 1 a = 100 2 b = 200 23456N 3 if a > b: 4 basic.show_string("a is greater than b") 5 else: 6 basic.show_string("b is greater than or equal to a") 7 | b أكبر من أو يساوي a S الشرط 447 وزارة التعليم Ministry of Education 2024-1446
مثال: انشء البرنامج التالي في فئة أوامر المنطق
448 جملة if ...elif في الجمل الشرطية السابقة كان على المستخدم اختيار أحد خيارين، أما في هذا النوع من جمل if الشرطية، فإن المستخدم يجب أن يحدد خيارًا من بين خيارات متعددة. تنفذ عبارات if من الأعلى إلى الأسفل. يتحقق المقطع البرمجي من الشروط واحدًا تلو الآخر، فإذا تحقق أحد الشروط، تنفذ العبارة تحت هذا الشرط ويتجاوز باقي الشروط اما إذا لم يتحقق أي من الشروط، فستنفّذ جملة else النهائية. : الشرط الأول if العبارة 1 : الشرط الثاني elif العبارة 2 العبارة 3 else: 00 البداية صواب خطأ تحقق الشرط الأول هذه هي else النهائية العبارة 1 صواب خطأ تحقق الشرط الثاني العبارة 2 النهاية العبارة 3 وزارة التعليم Ministry of Education 2024-1446
جملة if...ilfe
الإدخال لقد تعلمت حتى الآن كيفية تعيين قيم المتغيرات المقطع البرمجي. هناك طريقة أخرى لتعيين قيمة متغير وهي الحصول على بيانات الإدخال والمعلومات من بيئة الجهاز الذي تبرمجه يقدم بايثون فئة إدخال (Input) حيث يمكنك العثور على أوامر الإدخال، عند استدعاء إحدى هذه الدوال، يتوقف المقطع البرمجي وينتظر إدخال البيانات من الأمثلة على البيانات المدخلة الضغط على زر معين. تستخدم جمل if الشرطية المدخلات كشروط. تتضمن مدخلات مايكروبت أحداثًا وبيانات من أجهزة الاستشعار والأزرار المختلفة. 449 مستشعر اللمس يقوم مستشعر اللمس باستشعار التغييرات الطفيفة في المجالات الكهربائية لمعرفة متى يضغط الإصبع أو الفأرة عليه تماما مثل شاشة هاتفك أو جهازك اللوحي مستشعر درجة الحرارة يعدّ مستشعر درجة حرارة المايكروبت جهاز إدخال داخل المعالج يقيس درجة حرارته مستشعر البوصلة الرقمية تعدّ البوصلة الرقمية مستشعر إدخال يكتشف المجالات المغناطيسية. ويحتوي المايكروبت على بوصلة مدمجة يمكنها تمييز الاتجاهات مقياس التسارع يعد مقياس التسارع مستشعر حركة يعمل على قياس الحركة. ويعمل مقياس التسارع في المايكروبت عند تحريكه بشكل مائل من اليسار إلى اليمين، للخلف وللأمام ولأعلى ولأسفل وزارة التعليم Ministry of Education 2024-1446 A B 0 1 2 3V GND -USB BLE ANTENNA RESET - BATTERY - BBC PROCESSOR COMPASS ACCELEROMETER PINS micro:bit 3V
الإدخال
450 تطبيقات المستشعرات في الحياة مستشعر اللمس تُستخدم مستشعرات اللمس بشكل كبير كبديل للمفاتيح الآلية رغم أن لها استخدامات أخرى متعددة. ويمكن ملاحظة التطبيقات الأكثر شيوعًا لمستشعرات اللمس في صناعة الإلكترونيات الاستهلاكية التي تشمل أجهزة الحاسب والهواتف المحمولة، والأجهزة الطرفية والأجهزة المنزلية، وأنظمة قفل الأبواب، ووحدات التحكم في الألعاب، فقد كان هذا القطاع من أولى القطاعات التي شهدت انتشارًا عالميًا. وهناك مجال آخر تُستخدم فيه مستشعرات اللمس بصورة متزايدة وهو مجال صناعة السيارات، فالمفاتيح الذكية ومفاتيح التحكم ، وأجهزة التحكم عن بعد، والشاشات التي تعمل باللمس تعدّ ميزات أساسية في السيارات ذات التقنية الحديثة. مستشعر الحرارة تُستخدم مستشعرات الحرارة في العديد من الأجهزة الكهربائية داخل المنازل مثل : الثلاجات للمساعدة على تنظيم درجات الحرارة الباردة والحفاظ عليها وتُستخدم كذلك داخل المواقد والأفران لضمان ارتفاع درجة حرارتها إلى المستويات المطلوبة للطبخ أو التدفئة. وتستخدم أيضًا في مبرد المركبات للتحذير عندما ترتفع درجة حرارة المحرك بشكل خطير، إضافة إلى استخدامها في نظام التحكم بالمناخ داخل السيارة. بالإضافة إلى ذلك، تعتمد الدوائر المتكاملة على مستشعرات درجة حرارة السيليكون المدمجة في وحدات التحكم الدقيقة والإلكترونيات الأخرى. ويمكن العثور على هذه المستشعرات في مجموعة كبيرة من الأجهزة الإلكترونية مثل: أجهزة الحاسب المكتبية، والمحمولة واللوحية، والهواتف المحمولة وغيرها من الأجهزة الإلكترونية الأخرى. مستشعر البوصلة الرقمية يعد مستشعر البوصلة الرقمية الجهاز الأكثر فاعلية في التنقل وتحديد الموقع والتعرف على الاتجاهات، وهو مفيد جدًا للرحالة في العثور على اتجاهاتهم، كما يُستخدم في الملاحة الجوية والتطبيقات العسكرية والروبوتات الخاصة بالمركبات ذاتية القيادة. هناك العديد من التطبيقات المتاحة والخاصة بمستشعرات البوصلة الرقمية لنظام أندرويد. على سبيل المثال: أثناء استخدام نظام تحديد المواقع العالمي (GPS) على الهواتف الذكية يمكن استخدم مستشعر البوصلة الرقمية الخاص بها لتحديد جهة الشمال والتدوير التلقائي لخريطة جوجل وفقًا لاتجاهها على أرض الواقع. مستشعر مقياس التسارع يمكن لمستشعرات مقياس التسارع قياس التسارع، أو السرعة، أو الإمالة أو الاهتزاز أو الصدمة ويستخدم هذا النوع من المستشعرات في أنظمة التثبيت. فعلى سبيل المثال: تستخدم الطائرات بدون طيار مقياس التسارع حيث يتكون من مستشعر الحركة القائم على المحور لتحديد اتجاهها والقدرة على الطيران بثبات. يستخدم مقياس التسارع أيضًا ضمن عوامل الأمان في أجهزة الحاسب المحمولة داخل الأقراص الصلبة. فعلى سبيل المثال إذا سقط جهاز الحاسب المحمول فجأة أثناء استخدامه، فسيكتشف مقياس التسارع هذا السقوط المفاجئ ويوقف محرك القرص الصلب على الفور لتجنب حدوث أي تلف. تحتوي بعض الهواتف الذكية وأجهزة الحاسب اللوحية وغيرها من الأجهزة على مقياس تسارع للتحكم في واجهة المستخدم، حيث تُستخدم لتغيير وضع الشاشة أفقيًا أو رأسيًا بناءً على طريقة حمل الجهاز. وزارة التعليم Ministry of Education 2024-1446
مستشعر اللمس
مستشعر الحرارة
مستشعر البوصلة الرقمية
مستشعر مقياس التسارع
مثال برمجي: درجة الحرارة يكتشف الأمر حرارة (0) temperature) درجة الحرارة المحيطة ويقيسها بالدرجة المئوية. يحدد مايكروبت درجة الحرارة المحيطة من خلال فحص درجة حرارة المعالج. ونظرًا لأن درجة حرارة مايكروبت لا تكون مرتفعة في العادة، فإن درجة حرارة وحدة المعالجة المركزية عادةً ما تكون قريبة من درجة الحرارة في أي مكان محيط بها. لتلق نظرة على بعض الأمثلة باستخدام جمل if ... elif. المخطط الانسيابي للمقطع البرمجي البداية درجة الحرارة صواب خطأ درجة الحرارة > 0 اعرض النص "الحرارة فوق الصفر" .("The temperature is above zero") صواب خطأ درجة الحرارة < 0 اعرض النص "الحرارة تحت الصفر اعرض النص "الحرارة تساوي صفر" .("The temperature is zero") .("The temperature is below zero") النهاية 451 وزارة التعليم Ministry of Education 2024-1446
الحرارة
للتحقق من درجة الحرارة من فئة Logic المنطق) ، اسحب وأفلت دالة if. 1 > من فئة . Input (الإدخال)، اسحب وأفلت أمر (0) temperature (درجة الحرارة (درجة مئوية)) ، كشرط في جملة if واكتب > 2.0 من فئة Basic أساسي)، اسحب وأفلت أمر show string إظهار السلسلة) وعيّن النص إلى "The temperature is above zero" "الحرارة فوق صفر ) . 3 من فئة Logic المنطق)، اسحب وأفلت الأمر if else وعيّن 0> ( ) input.temperature (إدخال الحرارة ) كشرط لها. 4 من فئة Basic أساسي)، اسحب وأفلت الأمر show string إظهار السلسلة) وعيّن النص إلى The temperature is below zero" الحرارة أقل من صفر ). 5 > من فئة Basic أساسي) ، اسحب وأفلت الأمر show string إظهار السلسلة) وعيّن النص إلى The temperature is zero" ("الحرارة هي صفر ) 0 > اضغط على تشغيل لمعاينة النتيجة. 7 قد ترتفع درجة حرارة المايكروبت قليلًا عند عمله لمدة طويلة. وزارة التعليم Ministry of Education 2024-1446 ستعرض درجة الحرارة على الشاشة micro:bit A 21 c 1 4 Home 0 1234567 Python 1 if input.temperature() > 0: 2 3 Microsoft basic.show_string("The temperature is above zero") if input.temperature() < 0: else: 5 basic.show_string("The temperature is below zero") basic.show_string("The temperature is zero") 6 Share 7 GND الحرارة فوق صفر 452
للتحقق من درجة الحرارة
لنطبق معًا تدريب 1 هل الأوامر التالية صحيحة أم خطأ؟ a= 5 > 7 basic.show_string(str((a))) b= 8 <= 8 basic.show_string(str((b))) a= 5 > 7 b= 8 <= 8 c = a == b basic.show_string(str((c))) تدريب 2 املأ الفراغات في الجمل التالية بالكلمات المناسبة مما يلي، ويمكنك استخدام بعض الكلمات عدة مرات: تجاوز False True تنفيذ واحدا تلو الآخر 1. في عبارة if إذا كان الشرط. 6.. فستنفذ العبارة (العبارات التي تلي if. إذا كان ....... فلن تنفذ العبارة (العبارات). 2. في عبارة if ... else إذا كان الشرط فستنفذ العبارة (العبارات) التي تلي if. إذا كان الشرط فستنفذ العبارة (العبارات الموجودة ضمن 3. في عبارة if ... elif يتحقق المقطع البرمجي من الشروط 6....... ، إذا كان أحد الشروط العبارة ضمن هذا الشرط. سيتم . بقية العبارات. إذا لم يكن أي من الشروط النهائية. .. else الشرط هو 6....... فسيتم فستنفذ عبارة else 453 وزارة التعليم Ministry of Education 2024-1446
454 تدريب 3 ما الذي يحدث عند تشغيل المقطع البرمجي التالي؟ اختر الإجابة الصحيحة. number = 12 if number > 0: basic.show_string("positive number") ه لن يعمل المقطع البرمجي لأن صيغة الأوامر غير صحيحة. لن تُعرض أي رسالة على الشاشة لأن المتغير لم يتم تعريفه. ستعرض الرسالة " positive number" (" رقم موجب") على الشاشة. number = -10 if number < 0 basic.show_string(negative number) ه لن يعمل المقطع البرمجي لأن صيغة الأوامر غير صحيحة. ○ ○ لن تُعرض أي رسالة على الشاشة لأن الشرط غير صحيح. ستعرض الرسالة " negative number رقم سالب على الشاشة. تدريب 4 أنشئ مقطعًا برمجيًا يسألك عن درجاتك في الاختبارات، ويعرض تقديرك: ممتاز أو جيد أو مقبول أو غير مجتاز. وزارة التعليم Ministry of Education 2024-1446
تدريب 5 شغل المقطع البرمجي التالي وصف وظيفته. def on_forever(): if input.button_is_pressed(Button.A): else: basic.show_icon(IconNames.HAPPY) basic.show_icon(IconNames.CONFUSED) basic.forever(on_forever) وزارة التي 455 Ministry of Education 2024-1446
456 تدريب 6 ارسم مخططا انسيابيًا لمقطع برمجي يقيس درجة حرارة البيئة المحيطة ثم أنشئ المقطع > إذا كانت درجة الحرارة تساوي أو تزيد عن 30 ، فسمّ الرسالة "hot weather" (" الطقس حار"). > إذا كانت درجة الحرارة متساوية أو أقل من 20 فسم الرسالة "cold weather" ("الطقس بارد"). > إذا كانت درجة الحرارة بين 30 و 20 ، فسمّ الرسالة "good temperature" ("درجة الحرارة جيدة"). المخطط الانسيابي وزارة التعليم Ministry of Education 2024-1446
تدريب 7 ارسم مخططا انسيابيًا لمقطع برمجي يتحقق مما إذا كان بإمكان ثلاثة أشخاص استخدام المصعد في نفس الوقت ثم أنشئ المقطع البرمجي: > حدد الطاقة الاستيعابية للمصعد. > حدد وزن كل شخص. > احسب الوزن الإجمالي للأشخاص الثلاثة. أجر الفحص واعرض الرسالة المناسبة. المخطط الانسيابي 457 وزارة التعليم Ministry of Education 2024-1446