البرمجة النصية الوحدة الأولى مقدمة تعتبر البايثون من اللغات البرمجية عالية الم�ستوى ،التي ت�ستخدم �أ�سلوب البرمجة الكائنية ـ Object ( ،Oriented Program (OOPمفتوحة الم�صدر القابلة للتطوير .وتتميز ب�سهولتها وقدرتها على التعامل مع من�صات و أ�نظمة ت�شغيل مختلفة مثل ،Windows :لينك�س ،Linuxوغيرها .و ُت�ستخدم ب�شكل وا�سع في العديد من المجالات مثل :تطوير مواقع الويب ،والتطبيقات المتعلقة بالذكاء الإ�صطناعي ،وت�صميم الواجهات الر�سومية وبرامج ثلاثية الأبعاد وغيرها. تهدف هذه الوحدة إ�لى تعريفك لمفهوم لغة البايثون ،وكيفية التخطيط لإن�شاء برنامج ما ،بالإ�ضافة إ�لى ا�ستخدام الدوال والجمل ال�شرطية ،وحلقات التكرار في التحكم بالبرنامج الذي تن�شئه.كما �ستتعرف �إلى كيفية ا�ستخدام البايثون في إ�ن�شاء ر�سومات متجهة. يتو َّقع منك عزيزي الطالب /عزيزتي الطالبة بعد دراسة هذه الوحدة: nالتعرف �إلى مفهوم البرمجة الن�صية. nالتعرف �إلى أ�نواع البيانات وكيفية تحويلها. � nإدراك �أهمية الخوارزميات للتخطيط وكتابة البرامج. nتنفيذ مهام محددة با�ستخدام الجمل ال�شرطية. nتوظيف حلقات التكرار لتكرار تنفيذ مهام برمجية. nا�ستيراد وحدات برمجية لت�صميم واجهة ر�سومية.
2
الدرس الأول مقدمة إلى لغة البرمجة النصية لغة البرمجة الن�صية Scripting Languageعبارة عن مجموعة �أوامر وتعليمات ُت�ستخدم ف��ي �إن�ش���اء برنامج به��دف تنفيذ مهام مح��ددة .ويعم��ل المبرمجون على كتاب��ة التعليمات با�ستخدام لغات برمجية عالية الم�ستوى�ُ ،صممت لتكون �سهلة في القراءة والفهم .ومن ا ألمثلة عليها ،Java :و ،++Cو .Python نشاط :1لماذا نتعلم لغة البايثون؟ �ش��اهد مقطع الفيديو (مقدمة �إلى البرمجة) ،وا�س��تعن بالملف المرف��ق (،)Programming.pdf لمناق�شة ما يلي: �1.1أهمية تعلم البرمجة. 2.2مفهوم برمجة البايثون. 3.3مزايا ا�ستخدام لغة بايثون. الفرق بين لغات البرمجة عالية الم�ستوى ، High Level Languagesولغات البرمجة ابحث منخف�ضة الم�ستوى . Low Level Languages تذكر! جميع لغات البرمجة ت�شترك في المفاهيم والمبادئ الأ�سا�سية� ،إن أ�تقنتها فمن ال�سهل عليك الانتقال بين لغات البرمجة المختلفة. 3
استكشاف بيئة الأوامر في بايثون يت�ضمن البايثون عدة تطبيقات� ،أهمها بيئة التطوير والتعليم المتكاملة IDLEوهي اخت�صار لـ (Integrated- ،)Development and Learning Environmentالم�ستخدمة في إ�ن�شاء البرامج وتطويرها. ولفتح بيئة التطوير ،IDLEاتبع ما يلي : • من قائمة أ�بد�أ ،Startافتح مجلد ،Pythonلتظهر لك عدة خيارات. يمكن��ك تحمي��ل برنام��ج البايثون من الموقع www.python.com انقر على IDLE Python علي��ك الت أ�ك��د م��ن أ�ن��ك �ستلاحظ أ�ن بيئة التطوير IDLEتحتوي على نوعين من النوافذ ،هما: ت�ستخ��دم �أح��دث �إ�ص���دار أ�ولا) نافذة الأوامر :Python Shell للبايث��ون ،لوج��ود اختلاف في الأوامر بي��ن إ��صداراته، وهي النافذة الافترا�ضية التي تظهر لك بمجرد النقر على التطبيق، كالاخت�ل�اف بي��ن الإ�صدار وتعتبر نافذة تفاعلية لأنه يتم فيها كتابة �أمر برمجي وعر�ض الناتج الثان��ي والثال��ث ،مم��ا ق��د مبا�شرة في ال�سطر التالي عند ال�ضغط على مفتاح الإدخ�ال ،Enter ي�صع��ب علي��ك تنفيذ بع�ض أ�وامر الإ�ص���دارات ال�سابقة وتتكون مما يلي: في ا إل�صدارات الحديثة. 4
الدرس الأول 1 2 3 4 �شريط القوائم :Menu barيت�ضمن مجموعة قوائم لتنفيذ أ�وامر ،مثل :حفظ البرنامج ،والطباعة، 1 وتتبعا ألخطاء،و�إعادة�ضبطالبيئةالبرمجيةوغيرها. 2 3 �سطر المعلومات :Information lineيحتوي على معلومات تتعلق برقم ا إل�صدار للبرنامج المثبت 4 على الجهاز ،وتاريخ بدء الن�شر ،وموا�صفات الجهاز. �سطر ا ألوام�ر البرمجية :Command lineعبارة عن �أوامر برمجية ،عند كتابتها �ستعر�ض لك الم�ساعدة وحقوق الن�شر و�شروط ا�ستخدام البرنامج. موجه ا إلدخال :)<<<( Input promptيدلعلىا�ستعدادالبرنامجلتلقيا ألوامر،ويتمكتابةا ألوامر البرمجيةبعدعلامةموجها إلدخال. استكشف حقوق البايثون من خلال كتابة الأمر copyrightعند موجه الإدخال. ثانيا) نافذة المح ِّرر Editor يتم فيه إ�ن�شاء ملفات جديدة وكتابة ا ألوامر البرمجية بداخلها ،وحفظه ثم ت�شغيله بال�ضغط على �أمر ،Run Moduleمن قائمة ،Runليظهر الناتج بالكامل ككتلة واحدة في �شا�شة الأوامر .python Shell ولفتح نافذة المحرر ،Editorاتبع ما يلي: • اختر أ�مر ملف جديد ،New Fileمن قائمة ملف ،Fileلتظهر لك نافذة المحرر كما يلي: 5
mالفرق بين القوائم الموجودة في نافذة ا ألوامر ،Python Shellوالموجودة في نافذة المحرر .Editor استكشف mقائمة الم�ساعدة Helpوما تحويه من تعليمات للبايثون. إدخال البيانات ُت�ستخ��دم دال��ة �إدخال ( ) inputإلدخال أ�نواع مختلفة من البيان��ات التي تتعامل معها لغة البايثون حيث تظهر للم�ستخدم ر�سالة تطلب منه إ�دخال بيانات محددة ،ويتم كتابة ا ألمر كالتالي: ( نص الرسالة الموجهة ) input ولا�ستخدام دالة �إدخال( ) inputفي كتابة ر�سالة تطلب من الم�ستخدم �إدخال ا�سمه ،اتبع ما يلي: • ت أ�كد من فتح نافذة الأوامر .Python Shell • �أكتب دالة إ�دخال ( ) ،inputثم: 1أكتب النص من فضلك ادخل اسمك بداخل الأقواس ،ثم اضغط على مفتاح الإدخال Enter ستلاحظ تنفيذ الرسالة في السطر التالي للأمر مباشرة، مع ظهور مؤشر الفأرة في انتظار لاستقبال إدخال البيانات • ادخل ا�سمك ،ثم ا�ضغط على مفتاح الإدخال .Enter �ستلاحظ أ�نه يتم التمييز بين الأمر ،والن�ص المكتوب بداخله ،والناتج المخرج ب أ�لوان مختلفة. • احفظ الملف الذي ان�ش أ�ته بامتداد(.).py 6
الدرس الأول كيفية كتابة �أمر ُيظهر للم�ستخدم ر�سالة تطلب منه إ�دخال ا�سمه ،ثم ر�سالة �أخرى فكر؟ إلدخال عمره با�ستخدام نف�س دالة ا إلدخال . معلومة تهمك • يتم كتابة ا ألوام�ر البرمجية با�ستخدام الحروف ا إلنجليزية ال�صغيرة Small lettersدائم ًا ،ألن البرنامج لا يتعرف على الأوامر عند كتابتها بحروف كبيرة .Capital letter • يتم كتابة الن�صو�ص بين علامتي التن�صي�ص المزدوجة ن�ص ،أ�و علامتي التن�صي�ص المفردة ن�ص . إخراج البيانات ُت�ستخدم دالة طباعة ( ) printإلظهار ر�سالة معينة وطباعتها على ال�شا�شة ،أ�و طباعة ناتج لعملية ما وغيرها بعد معالجتها ،ويتم كتابتها كالتالي: ( البيانات المطلوب إظهارها ) printأو ( اسم المتغير)print لإن�شاء برنامج يعمل على طباعة عبارة ترحيبية ،اتبع ما يلي: • ت�أكد من فتح نافذة ا ألوامر .Python Shell 1أكتب العبارة الترحيبية مرحبا بك بداخل أقواس دالة • أ�كتب دالة طباعة ( ) ،printثم: طباعة () ،printثم اضغط مفتاح الإدخال Enter لاحظ نتيجة تنفيذ البرنامج 7
ولطباعة العبارة الترحيبية ،بعد إ�دخال ا�سم الم�ستخدم ،اتبع ما يلي: 2اكتب علامة ( ،) ,ثم دالة الإدخال () 1 ،inputأكتب العبارة مرحبا بك بداخل أقواس دالة طباعة () print ثم رسالة طلب استقبال اسمك 4ادخل اسمك ،ثم اضغط مفتاح 3تأكد من إغلاق قوس أمر دالة الإدخال الإدخال Enterمرة أخرى ثم قوس دالة الطباعة ،ثم اضغط مفتاح الإدخال Enter �ستلاحظ أ�ن تنفيذ البرنامج للأوامر قد بد�أ من ا ألقوا�س الداخلية ثم الأقوا�س الخارجية. لاح�ظ أن الاس�م يظهر ملاصق للعبارة الترحيبية عند طباعته معلومة تهمك • ُت�ستخدم علامة ( ),للربط بين �أكثر من كلمة أ�و أ�كثر من جملة بجانب بع�ضها. • ُت�ستخدم علامة ( )#في حالتين: -لإ�ضافة تو�ضيح في البرنامج ،حيث يتم تجاهله عند تنفيذ البرنامج. -لإيقاف تنفيذ �أمر برمجي عند إ��ضافتها قبل الأمر كما يلي#print(name) : 8
الدرس الأول لو�ضع الا�سم المدخل في �سطر جديد new lineبا�ستخدام أ�مر ( ،)\\nاتبع ما يلي: • �أعد كتابة الأمر البرمجي ال�سابق كالتالي: 5اكتب أمر سطر جديد \\ n 6ادخ�ل اسمك ،ثم اضغط مفتاح الإدخال Enter لاحظ ظهور والعبارة الترحيبية والاسم في سطر جديد المتغيرات Variables المتغير عبارة عن مكان في الذاكرة ُي�ستخدم لتخزين بيانات وقيم قابلة للتغير �أثناء تنفيذ البرنامج، حيث ي�أخذ كل متغير ا�سم خا�ص به يتم ا�ستدعاءه من خلاله لمعرفة ما بداخله من بيانات ،وا�ستخدامها لاح ًقا في البرنامج. عند �إن�شاء متغير ،لابد أ�ن يتكون مما يلي: -ا�سم المتغير :Variable nameيجب �أن يكون لكل متغير ا�سم فريد غير مك َّرر. -قيمة المتغير :Variable valueوهي القيمة التي ُتخ ّزن في المتغير. -نوع البيانات :Data typeوتكون البيانات المخزنة �إما �سلا�سل ن�صية � Stringأو رقمية (عدد �صحيح � Integerأو عدد ع�شري ) Floatوغيرها ،وتحديد نوع البيانات ي�ساعد على تحديد حجم م�ساحة التخزين اللازمة لحفظ المتغير. 9
معلومة تهمك • عند تعريف المتغير ،لابد من مراعاة ال�شروط التالية: -أ�ن يبد أ� بحرف �أو علامة ( ـ). � -أن لا يبد أ� برقم. -أ�ن لا يحتوي على رموز �أو علامات خا�صة مثل ،= ( :؟.).... ،$ ،% ، -أ�ن لايحتوي على م�سافات. � -أن لا يكون �أحد الكلمات المحجوزة في لغة البرنامج ،مثل� and :أو Trueوغيرها. � -أ�سماء المتغييرات تعتبر ح�سا�سة لحالة الأحرف ،على �سبيل المثال ،name :وو، Nameو NAME هي ثلاثة متغيرات مختلفة. ويتم إ�ن�شاء متغير بطريقتين: �أولا� :إ�سناد مبا�شر: يتم عن طريق كتابة ا�سم المتغير ،و إ�دخال قيمة ثابتة له مبا�شرة .ولتعريف متغير وليكن ( )xيحتوي على قيمة معينة وطباعته على ال�شا�شة ،اتبع ما يلي: • ت�أكد من فتح نافذة ا ألوامر .Python Sell 1اكتب اسم المتغير( ،)xمتبوعا بعلامة (=) ،لإعطائه قيمة ولتكن ()5 2اطبع قيمة المتغير ،ثم اضغط مفتاح الإدخال Enter لاحظ ظهور ناتج قيمة المتغير باللون الأزرق ج ّرب تعريف متغيرين بنف�س القيمة كما يلي ، x=y=5 :ثم ا�ستخدم �أمر printلطباعة الناتج .ماذا تلاحظ؟ 10
الدرس الأول كيفية تعريف متغيرين و�إ�سناد قيمتين مختلفتين لكل منهما في �آن واحد وطباعة استكشف ناتجهما. ثانيا� :إ�سناد با�ستخدام دالة �إدخال () :input ُت�ستخدم لا�ستقبال قيمة متغيرة يدخلها الم�ستخدم عند ت�شغيل البرنامج وتخزينها في متغير ،ولتعريف متغير وليكن ( )aيطلب منك ادخال عدد �صحيح ،اتبع ما يلي: 1اكتب اسم المتغير( )aمتبو ًعا بعلامة (=) ،ثم استخدم دالة الإدخال ( ) inputلإظهار رسالة تطلب منك ادخال عدد صحيح ،ثم اضغط مفتاح الإدخال Enter 2أدخ�ل العدد الصحيح ،ثم اضغط مفتاح الإدخال Enter 3اطبع قيمة المتغير ()a تحويل البيانات ٌت�ستخدم دالة ( ) typeلمعرفة نوع البيانات المخزنة في المتغيرات ،ولعمل ذلك اتبع مايلي: في نافذة الأوامر :Python Shell 1اكتب اسم دالة( ،type)aثم اضغط مفتاح الإدخال Enter لاحظ أن البيانات المخزنة في المتغير ()a من نوع سلاسل نصية String 11
لماذا تكون البيانات المدخلة با�ستخدام دالة إ�دخال () inputمن نوع �سلا�سل فكر ن�صية String؟؟ لتحويل نوع البيانات من �سلا�سل ن�صية إ�لى عدد �صحيح با�ستخدام دالة ( ) ،intاتبع ما يلي: في نافذة الأوامر :Python Shell • اعد كتابة ا ألمر البرمجي ال�سابق كالتالي: 1اكتب دالة ( ) ،intقبل دالة الإدخال 2تأكد من إغلاق قوس دالة () ، inputثم أكمل كتابة بقية الأمر ،ثم عدد صحيح ( ) int اضغط على مفتاح الإدخال Enter 3أدخل العدد الصحيح • ت�أكد من كتابة دالة( ،type )aو أ��ضغط على مفتاح ا إلدخال Enterمرة �أخرى ،ولاحظ ما نوع البيانات المدخلة؟ معلومة تهمك • يتم تغيير قيم المتغيرات في برنامج بايثون ،با�ستخدام الدوال التالية: -دالة( ) :strلتحويل قيم المتغير �إلى �سل�سلة ن�صية .string -دالة( ) :intلتحويل قيم المتغير �إلى عدد �صحيح .integer -دالة( ) :floatلتحويل قيم المتغير �إلى عدد ع�شري .float 12
الدرس الأول نشاط : :2تسجيل دخول المستخدم • �أن�ش��ئ برنام��ج ف��ي نافذة الأوام��ر ،Python Shellيطل��ب من الم�ستخدم إ��سن��اد قيمة للمتغير با�ستخدام دالة �إدخال ( ) ،inputبحيث ينفذ المهام التالية: -المتغير ا ألول :يظهر ر�سالة تطلب من الم�ستخدم إ�دخال ا�سم الم�ستخدم .User name �أن على ،Password �ري �س� رقم إ�دخال تطلب من الم�ستخدم ر�سال� �ة االلثراقن��ميا:لميدظهخرل ي-كاولنمتقغيي�م�ةر عدد ع�شري .Float من نوع • ت�أكد من نوع البيانات المخزنة في متغير الرقم ال�سري با�ستخدام دالة ( ) .type تذكر! تعلم لغة البرمجة ي�ساعدك على رف�ع م�ستوى ذكائك في التفكير ،و�سرعتك في اتخاذ القرارات في حياتك ال�شخ�صية. 13
14
الدرس الثاني التعبيرات والشروط التعبي��رات عبارة عن مزيج بين متغي��رات وثوابت يتم ا�ستخدامها �إما لح�ساب قيم وتخزينها، أ�و للتحقق من �صحة البيانات ،أ�و لدمج �أكثر من كلمة في جملة واحدة .أ�ما ال�شروط فهي تح ِّدد طريقة عمل البرنامج ،و آ�لية تنفيذه للأوامر با�ستخدام ما ي�سمى بالجمل ال�شرطية. خطوات انشاء برنامج بلغة البرمجة لكتابة أ�ي برنامج بلغة البرمجة ،عليك اتباع الخطوات التالية: التحليل تعريف الم�شكلة وتحديد الحل المنا�سب لها. التخطيط كتابة خطوات الحل مرتبة ب�شكل منطقي في مخطط ان�سيابي كتابة الأمر البرمجي تحويل الخطوات الى أ�وامر برمجية مكتوبة بلغة البرمجة تنفيذ البرنامج ت�شغيل البرنامج والت أ�كد من انه يعمل ب�شكل �صحيح. 15
التعبيرات Expressions تتكون التعبيرات من قيم ثابتة �أو متغيرة ت�سمى معاملات ،Operandsيتم الربط بينها عن طريق رموز أ�و كلمات خا�صة ت�سمى عوامل ُ ،Operatorsت�ستخدم ح�سب الغر�ض من التعبير �أو نوع العملية المراد إ�جراءها ،على �سبيل المثال: معاملات X=5+3 عوامل وتتعامل لغة البايثون مع عدة �أنواع من العوامل ،مثل: 1العوامل الح�سابية Arthmatics Operators ُت�ستخدم لإجراء عمليات ح�سابية با�ستخدام العوامل الح�سابية المختلفة ،كما يو�ضحها الجدول التالي: العملية العامل الأمثلة 4*5=20 * ال�ضرب 6/3=2 الق�سمة / 4+3=7 + الجمع 7 -2 = 5 _ الطرح 5%2=1 باقي الق�سمة % ولا�ستخدام العامل الح�سابي في �إن�شاء برنامج يعمل على ايجاد المتو�سط الح�سابي لطولي �شخ�صين، طول ا ألول = � 168سم ،وطول الثاني =� 175سم ،اتبع ما يلي: • اتبع خطوات إ�ن�شاء برنامج ،لتحديد ما يلي: 16
الدرس الثاني ،طول ال�شخ�ص الثاني= �175سم �أول ًا :التحليل المعطيات :طول ال�شخ�ص الأول = �168سم المطلوب� :إيجاد متو�سط الطولين. ثانيا :التخطيط البداية ادخل قيمة المتغير ا ألول ادخل قيمة المتغير الثاني المتو�سط =( مجموع ا ألطوال) 2 / اطبع ناتج المتو�سط النهاية ثالثا :كتابة ا ألوامر البرمجية من نافذة الأوامر :Python Shell • اختر �أمر ملف جديد ،New Fileلفتح نافذة جديدة في IDLEالمح ّرر ،و أ�حفظ الملف با�سم. • ع ّرف المتغيرات اللازمة لتخزين القيم التالية: :x -و أ��سند لها قيمة طول ال�شخ�ص ا ألول. :y -و أ��سند لها قيمة طول ال�شخ�ص الثاني. :average -لتخزين ناتج المتو�سط الح�سابي. 17
• �أطبع ناتج العملية با�ستخدام دالة () ، printمع كتابة عبارة (متو�سط ا ألطوال) ،كما هو مو�ضح لك: رابع ًا :تنفيذ البرنامج • �ش ّغل المقطع البرمجي با�ستخدام أ�مر Run Moduleمن قائمة ،Runأ�و ا�ضغط على مفتاح F5من لوحة المفاتيح. يمكنك معرفة اسم ملف البرنامج الذي الذي تشغله باستخدام أمر ،Run Moduleمن خلال السطر الموجود أعلاه والذي يحتوي على اسم ملف البرنامج ال ُم َن َف ْذ لاحظ أن تنفيذ البرنامج وظهور ناتج المتوسط الحسابي يكون في نافذة الأوامر Python Shell نشاط : :3حساب مساحة الأشكال • ت أ�م��ل ال�ش��كل التال��ي المكون م��ن م�ستطيل ومتوازي أ��ضلاع ،ثم اتب��ع خطوات ان�شاء برنامج يعمل على ح�ساب الم�ساحة الكلية لل�شكلين. 20سم 18
الدرس الثاني 2عوامل المقارنة Comparisons Operators ُت�ستخدم لإجراء مقارنة بين قيمتين ،والح�صول على إ�حدى النتيجتين ،إ�ما �صحيح Trueإ�ذا كانت ا إلجابة نعم ،أ�و خط أ� � Falseإذا كانت ا إلجابة لا ،با�ستخدام رموز المقارنة التالية: تو�ضيح الأمثلة �أمثلة العملية العامل هل قيمة aت�ساوي قيمة b؟ ي�ساوي == هل قيمة aلا ت�ساوي قيمة b؟ a==b هل قيمة � aأ�صغر من قيمة b؟ a! =b لا ي�ساوي =! هل قيمة aأ��صغر أ�و ت�ساوي قيمة b؟ a<b أ��صغر من > هل قيمة aأ�كبر من قيمة b؟ a<=b أ��صغر من �أو ي�ساوي => هل قيمة � aأكبر أ�و ت�ساوي قيمة b؟ a>b �أكبر من < a>=b أ�كبر من �أو ي�ساوي =< ولا�ستخدام عوامل المقارنة في كتابة برنامج يتحقق من ت�ساوي قيمتين ،اتبع ما يلي: • ت أ�كد من فتح نافذة ا ألوامر .python Shell 1أكتب أمر المقارنة ، 5==5 ثم اضغط مفتاح Enter لاحظ أن ناتج المقارنة صحيح True ج ّرب كتابة أ�مر المقارنة ، hello == Hello :ثم ا�ضغط مفتاح الإدخال ،ماذا تلاحظ؟ ف�ّسر ذلك. 3العوامل المنطقية Logical Operators ُت�ستخدم لفح�ص عدة �شروط يتم تحديدها لتنفيذ �أوامر معينة ،ف�إذا كان ناتج تحقق ال�شرط �صحيح � Trueسيتم تنفيذ الأمر ،و إ�ذا كان ناتج تحقق ال�شرط خط أ� ،Falseفلن يتم تنفيذ ا ألمر �أو يتم تنفيذ أ�مر آ�خر ،كما يلي: 19
ناتج الفح�ص أ�مثلة العملية يتحقق ال�شرط إ�ذا كان كلا ال�شرطين �صحيحين يتحقق ال�شرط �إذا كان أ�حد ال�شرطين �صحيح 6>4 and 5<6 and 8==8 or 6! =6 or يعك�س النتيجة ،أ�ي إ�ذا كانت النتيجة �صحيحة True ف إ�نها �ستحولها إ�لى خط أ� Falseوالعك�س �صحيح. not 3 >1 not لا�ستخدام العوامل المنطقية في كتابة برنامج يقوم بالتحقق من ت�ساوي قيمتين ،اتبع ما يلي: اكتب شرط المقارنة 1 ،1==1 and 4!=4 ثم اضغط مفتاح ضبط الإدخال Enter لاحظ أن ناتج المقارنة خطأ ،False لأن أحدد الشرطين خطأ ج ّرب ا�ستخدم عامل ( ،)orفي تنفيذ التعبير المنطقي ال�سابق ،ولاحظ الناتج. الجمل الشرطية ت�ستخدم لتنفيذ جزء مح َّدد من البرنامج في حال تحقق �شرط معين ،بحيث تكون نتيجة التحقق قيمة منطقية معينة ،إ�ما �صحيح � Trueأو خط أ� ،Falseوتدعم لغة بايثون ا ألنواع التالية من الجمل ال�شرطية: 1جملة ifال�شرطية: يتم فيها التحقق من �صحة ال�شرط المحدد ،ف إ�ذا كان ال�شرط �صحيح Trueينفذ جملة ا ألمر ال�شرطية، و إ�ذا كان خط أ� Falseيتم تجاهله ،كما يو�ضحه المخطط التالي: 20
الدرس الثاني البداية االل�بشدرايةط �صحيح True خط أ� False نفذ جملة ا ألمر ال�شرطية النهاية و إلن�شاء برنامج يقارن بين قيمة متغيرين ( ،)a , bويطبع عبارة ( ) b is greater than aعند تحقق �شرط أ�ن قيمة bأ�كبر من قيمة ، aاتبع ما يلي: • افتح ملف جديد New Fileفي IDLEالمح ّرر ،و أ�حفظ الملف با�سم. • ع ّرف المتغيرين ،a ،bو أ��سند لهما قيمة: لاحظ وجود مسافة فارغة بشكل افتراضي عند الضغط على مفتاح الإدخال Enter • �ش ِّغل المقطع البرمجي ،ولاحظ النتيجة التي �ستظهر لك. • ج ّرب تغيير عامل �أكبر من (<) إ�لى �أ�صغر من (>) ،ثم نف ّذ المقطع البرمجي .ماذا تلاحظ؟ ف�ّسر ذلك. 21
معلومة تهمك • تعتبر ifمن الكلمات المحجوزة� ،أي أ�نها مخ�ص�صة ألداء وظيفة معينة في البرنامج ،ويتم تمييز الكلمات المحجوزة في لغة البايثون باللون البرتقالي. • تعتمد لغة البايثون على تحديد الم�سافة الفارغة ب�شكل تلقائي في بداية ال�سطر البرمجي الذي يلي دالة الجملة ال�شرطية لتحديد ا ألوامر البرمجية التي تتبع الدالة ،ف إ�ذا كانت العبارة بدون هذه الم�سافة الفارغة ف�إنه لا يمكن تنفيذ البرنامج وتظهر ر�سالة وجود خط أ�. 2جملة if elseال�شرطية: يتم فيها التحقق من �صحة ال�شرط المح َّدد ،ف إ�ذا كان ال�شرط �صحيح Trueيتم تنفيذ جملة الأمر ال�شرطية ا ألولى ،و إ�ذا كان خط أ� Falseيتم تنفيذ جملة الأمر ال�شرطية الثانية ،كما يو�ضحه المخطط التالي: البداية خط أ� False االل�بشدرايةط �صحيح True ن ِّفذ جملة ا ألمر نفذ جملة ا ألمر ال�شرطية els ال�شرطية if النهاية 22
الدرس الثاني و إلن�شاء برنامج يقارن بين قيمة متغيرين ( ،)a , bويطبع عبارة ( ) b is greater than aعند تحقق �شرط �أن قيمة bأ�كبر من قيمة � aأي �أن النتيجة ( ،)Trueأ�و عبارة ( ) a is greater than b في حالة عدم تحقق ال�شرط أ�ي أ�ن النتيجة ( ،)Falseاتبع ما يلي: في المقطع البرمجي ال�سابق: • ت أ�كد من كتابة عامل �أكبر من (<) ،في جملة ال�شرط .if 1 أضف تعليمة elseإلى جملة الشرط، وتأكد من إلغاء المسافة البادئة للتعليمة. لاحظ الم�سافة الفارغة التي تبد�أ عند كتابة دالة ( ) printالتي تتبع جملة ال�شرط ،ifوالم�سافة الفارغة التي تبد أ� عند كتابة دالة ( ) printالتي تتبع تعليمة .else • �ش ّغل المقطع البرمجي ،ولاحظ النتيجة. نشاط :4المقارنة بين القيم • اتبع خطوات إ�ن�شاء برنامج يقارن بين قيم لثلاث متغيرات ،مع مراعاة ما يلي: -ع ّرف المتغيرات ،وا�سند لها قيمة مبا�شرة. -و ّظ��ف العملي��ة المنطقي��ة ( )orلاختبار �إذا كان قيم��ة المتغير ا ألول �أكبر م��ن قيمة المتغير الثاني ،أ�و إ�ذا كانت قيمة المتغير الأول �أكبر من قيمة المتغير الثالث. -إ�ذا كان �أحد ال�شرطين �صحيح ،Trueن ّفذ أ�مر طباعة العبارة: ) (one of the condition is true -و�إذا كان كلاً من ال�شرطين خط أ� ن ّفذ �أمر طباعة العبارة: .) (both conditions are false 23
ا ألمر جملة ين ِّفذ True �صحيح ا ألول ال�شرط كان ف إ�ذا �شرط، من 3جملة ال�شروط المتعددة (:)elif يتم فيها التحقق من �صحة أ�كثر ال�شرطية ا ألولى ،و�إذا كان خط أ� Falseيتم التحقق من �صحة �شرط �آخر لتنفيذ �أوامر أ�خرى ،وهكذا، كما يو�ضحه المخطط التالي: البداية االل�بشدرايةط 1 نفذ جملة ا ألمر �صحيح True ال�شرطيةIF خط�أ False ا الل�شبردايطة2 نفذ جملة الأمر �صحيح True ال�شرطية elif خط�أ False نفذ جملة الأمر ال�شرطية else خط�أ False النهاية ولإن�شاء برنامج يتحقق من �صحة �أكثر من �شرط ،اتبع ما يلي: • أ��ضف تعليمة ،elifو�شرط التحقق �إلى المقطع البرمجي ال�سابق ،ليبدو كالتالي: 24
الدرس الثاني • �ش ّغل المقطع البرمجي ،ولاحظ النتيجة التي تظهر لك. ج ّرب تغيير عامل المقارنة (<) لجملة ال�شرط ifبعامل (==) ،و عامل المقارنة (==) لجملة ال�شرط elifبعامل (=!) ج ِّرب تغيير عامل المقارنة لجملة ال�شرط ifمن (<) �إلى (==) ،وعامل المقارنة لجملة ال�شرط elifمن (==) �إلى (=!) ،ثم نفذ البرنامج .ماذا تلاحظ؟ نشاط :5التحقق من نتيجة مادة • اتبع خطوات ان�شاء برنامج يتحقق من نتيجتك في مادة تقنية المعلومات ،مع مراعاة ما يلي: المنا�سب التقدير متغير با�سم ( ،)markو أ��سند له قيمة با�ستخدام دالة () .input وع ّّظرفف - العامل المنطقي ( )andللتحقق من �صحة ال�شروط ،ومن ثم يطبع - للدرجة المدخلة كما هو مو ّ�ضح في الجدول التالي: التقدير الدرجة ممتاز 100 - 90 جيد جدا 89 - 80 جيد 79 - 65 50 - 64 مقبول � 49أو �أقل �ضعيف قد لا تخلو البرمجة من بع�ض التحديات ،لذا �أحر�ص على الا�ستمتاع مع كل �سطر برمجي تكتبه ،لت�صبح محتر ًفا في هذا المجال. 25
26
الدرس الثالث المصفوفات وحلقات التكرار ُت�ستخ��دم الم�صفوفة لجم��ع وتخزين مجموعة من القي��م والعنا�صر ،وتعتب��ر القوائم أ�كثر أ�ن��واع الم�صفوفات مرونة في التعامل مع عنا�صره��ا و إ�مكانية تحريرها ،كما تتيح لك تكرار عنا�صرها أ�و تنفيذ عدة �أوامر بنا ًء على �شرط معين با�ستخدام حلقات التكرار. المصفوفات Arrays ُت�ستخدم الم�صفوفة لجمع البيانات وتخزينها في الذاكرة تحت ا�سم متغير واحد ب�شكل منظم ،بحيث تكون مرتبة بجانب بع�ضها ،لت�سهيل عملية جلب البيانات ،وتطوير البرنامج .وتتعامل لغة البايثون مع أ�ربعة �أنواع من الم�صفوفات ،هي: ال�صف Tuple القائمة List تحتوي على مجموعة بيانات مرتبة ،غير قابلة تحتوي على مجموعة بيانات مرتبة ،قابلة للتغيير ،وت�سمح بتكرار بياناتها. للتغيير ،أ�ي يمكن الحذف وا إل�ضافة عليها، وت�سمح بتكرار بياناتها. القامو�س Dictionary المجموعة Set تحتوي على مجموعة بيانات غير مرتبة ،وغير تحتوي على مجموعة بيانات غير مرتبة ،أ�ي قابلة للتغير ،ولا ت�سمح بتكرار بياناتها ،كما تظهر بياناتها ب�شكل ع�شوائي عند ت�شغيل تحتوي على مفاتيح وقيم. البرنامج ،ولا ت�سمح بتكرار بياناتها. 27
التعامل مع القوائم Lists ُتعتبر القوائم أ�كثر �أنواع البيانات ا�ستخدا ًما في لغة البايثون ،ولا ت�شترط أ�ن تكون عنا�صرها الموجوده فيها من نف�س النوع ،ويمكن كتابتها على �شكل قيم متتالية ،تف�صل بينها بعلامة الفا�صلة ،وتكون القيم مح�صورة بين قو�سين مربعين ،كما في المثال التالي: اسم القائمة ]Name of list=[ a , b , c , 12 , 5.6 , -320 عناصر القائمة ولمعرفة طول القائمة ،Lengthوا إل�ستعلام عن عدد العنا�صر المخزنة فيها با�ستخدام دالة ( ) len ،اتبع ما يلي: • افتح ملف جديد ،New Fileلتفتح لك نافذة جديدة في IDLEالمح ِّرر ،واحفظ الملف با�سم. • ع ّرف القائمة ولتكن با�سم ( ،) lstثم �أكتب العنا�صر التالية: تجنب ا�ستخدام كلمة ()list لتعري��ف ا�س��م القائم��ة، ألنه��ا تعتب��ر م��ن الكلمات المحجوزة في لغة البايثون. • �ش ِّغل البرنامج با�ستخدام �أمر .Run Module لاحظ ظهور عدد عناصر القائمة 28 28
الدرس الثالث الو�صول إ�لى عن�صر مح ّدد يمكنك الو�صول �إلى عن�صر م ّحدد في القائمة من خلال تحديد رقم موقع العن�صر في القائمة ،يطلق عليه ا�سم فهر�س ،Indexحيث يبد�أ ترقيم فهر�س العن�صر الأول من جهة الي�سار بالرقم �صفر ،ثم واحد وهكذا ،ويكون رقم فهر�س العن�صر ا ألخير (طول القائمة – � )1أي ،)n-1(:أ�ما ترقيم فهر�س العن�صر الأول من جهة اليمين فيبد أ� بـ( ،)-1ثم ( )-2وهكذا ،كما يو�ضحه ال�شكل التالي: رقم العن�صر الأول قيمة العن�صر رقم العن�صر ا ألخير First Index Elemant Value Last Index 0 12 3 4 science IT Maths 1998 2000 -1 -5 -4 -3 -2 طول القائمة وي�ساوي 5 وللو�صول إ�لى العن�صر الثاني في القائمة على �سبيل المثال با�ستخدام الفهر�س ،اتبع ما يلي: • اكتب دالة الطباعة () ، printوبداخلها ا�سم القائمة ورقم فهر�س العن�صر المراد إ��ستدعائه ،كمايلي: • �ش ّغل البرنامج با�ستخدام أ�مر ،Run Moduleولاحظ العن�صر الذي �سيظهر لك. لطباعة �أكثر من عن�صر من خلال تحديد نطاق بدء و�إنتهاء الفهر�س ،وليكن من الفهر�س [،]1:4 اتبع مايلي: 29
فكر؟ كيف يمكنك طباعة جميع عنا�صر القائمة ب أ�كثر من طريقة؟ تحرير عناصر القائمة يمكن �إجراء العديد من العمليات على القائمة منها تحديث عنا�صر القائمة ،وحذف و إ��ضافة عن�صر �إلى القائمة. 1تحديث عنا�صر القائمة Elements رقم طريق عن المحدد العن�صر �إلى الو�صول Updating List يمكنك تغيير عن�صر �أو عدة عنا�صر في القائمة من خلال الفهر�س ،و إ�عطاءه قيمة جديدة با�ستخدام علامة (=). ولتغيير قيمة العن�صر الخام�س ( ،)2000إ�لى القيمة ( )2002على �سبيل المثال من القائمة ،lstاتبع مايلي: • ت�أكد من احتواء القائمة على العن�صر ( )2000با�ستخدام خا�صية ،inكما يلي: • �ش ّغل البرنامج ،ولاحظ أ�ن النتيجة تكون �صحيح ،Trueلأن العن�صر موجود. • ح ّدد رقم فهر�س العن�صر ،و�أ�سند له قيمة جديدة لتغييره ،كما يلي: • �ش ّغل البرنامج, ،ولاحظ قيمة العن�صر الخام�س بعد ا إل�ستبدال. ج ّرب ا�ستبدال العن�صر الثالث بـ [ ،] Arabicوالعن�صر الرابع بـ [ ]2020بنف�س ا ألمر البرمجي. 30
الدرس الثالث نشاط :6التحقق من وجود عنصر في القائمة • اتبع خطوات ان�شاء برنامج يتحقق من وجود عن�صر معين في القائمة ،مع مراعاة ما يلي: -ع ّرف القائمة ولتكن با�سم (.)fruits � -أدخل عنا�صر القائمة التالية.) apple , orange , banana ( : -تحقق من وجود العن�صر ( ) cherryفي القائمة ،لينفذ أ�حد ال�شرطين: عنا�صر جميع مع العبارة: البرنامج �سيطبع ،True �ح �صحي� ال�شرط �ج نات� � -1إذا كان ) yes ( القائمة. -2إ�ذا كان ال�ش��رط خط���أ � ،Falseسيعمل البرنامج على �إ�ستب��دال قيمة العن�صر الذي يحمل رقم الفهر�س [ ،]2بالقيمة ( ) cherryوطباعة عنا�صر القائمة بعد التحديث. 2إ��ضافة عن�صر �إلى القائمة Adding Elements يمكنك �إ�ضافة عن�صر أ�و أ�كثر ،أ�و قائمة بداخل قائمة �أخرى با�ستخدام الدالة ( ) append إل�ضافة عن�صر (� )artإلى القائمة ( ،)lstاتبع مايلي: • �ش ّغل البرنامج ،ولاحظ ظهور العن�صر الجديد في القائمة. ج ّرب حذف العن�صر ( )1998من القائمة با�ستخدام دالة( ) .remove كيفية حذف عن�صر من القائمة lstبا�ستخدام دالة الحذف ( ) ،delم�ستعي ًنا بقائمة استكشف الم�ساعدة .Help 31
نشاط :7إضافة قائمة إلى أخرى • ات-بعع ّرخفطاوالقتائانم�ةشااء ألوبلرنىا(م)aج،يوقأ�ادرخنلبيقنيمعنلأار�قصارمق�اصئمحتييحنة.،مع مراعاة ما يلي: -ع ّرف القائمة الثانية ( ،)bو�أدخل قيم لأرقام �صحيحة. -قارن بين القائمتين با�ستخدام عوامل المقارنة ،لتنفيذ أ�حد ال�شروط التالية: -1إ�ذا كانت ،a>bي�ضيف القائمة ( )bإ�لى القائمة ( ،)aثم يطبع القائمة (.)a -2إ�ذا كانت ،a<bي�ضيف القائمة (� )aإلى القائمة ( ،)bثم يطبع القائمة (.)b عبارة يطبع ثم (،)a القائمة إ�لى القائمة ي�ضيف مت�ساويتين، القائمتين كلا -3إ�ذا كان ()b ( .) a=b حلقات التكرار Loops ُت�ستخدم لتكرار جزء معين من الأوامر البرمجية إ�ما لعدد معين من المرات� ،أو حتى يتم ا�ستيفاء تحقق ال�شرط .وتنفذ لغة البايثون حلقات التكرار با�ستخدام جملتين ،هما: 1جملة التكرار ()While ُت�ستخدم لتنفيذ مجموعة �أوامر ب�شكل متكرر بنا ًء على �شرط معين والتحقق من �صحته ،ف إ�ذا تحقق ال�شرط (� ،)Trueسيتم تنفيذ الأوامر الموجودة بداخل ،Whileثم يعود البرنامج للتحقق من �صحة ال�شرط مرة أ�خرى ،حتى ت�صبح نتيجة ال�شرط خط أ� ( ،)Falseليعمل البرنامج على تجاهل جملة التكرار والخروج منها ،كما يو�ضحه المخطط التالي: 32
الدرس الثالث البداية م اانللتابلدح�اشقيرةقط ك ّرر تنفيذ أ�مر ال�شرط �صحيح True خط�أ False الخروج من حلقة التكرار النهاية و إلن�شاء ع َّداد counterيبد�أ الع ّد من � 1إلى ،10ويطبع قيمة العدد ،اتبع ما يلي: • اتبع خطوات �إن�شاء برنامج ،لتحديد ما يلي: أ�ول ًا :التحليل المعطيات :ا ألعداد من 1إ�لى 10 المطلوب� :إن�شاء ع ّداد للعد من 1إ�لى 10وطباعتها. 33
ثانيا :التخطيط البداية x=1 أ��ضف x=x+1 هل أ�طبع قيمة xالجديدة �صحيح True ? x<=10 الخروج من خط أ� False حلقة التكرار النهاية ثالثا :كتابة الأوامر البرمجية • افتح ملف جديد ،New Fileفي IDLEالمح ّرر ،و أ�حفظ الملف. • ع ّرف متغير وليكن ( ،)xو�أ�سند له قيمة ابتدائية مبا�شرة ( .)x=1 • ك ّرر عملية الزيادة في قيمة المتغير با�ستخدام حلقة التكرار ،whileكما يلي: 34
الدرس الثالث • �ش ِّغل البرنامج با�ستخدام أ�مر ت�شغيل ،Runولاحظ تكرار طباعة العدد ،1ف�ّسر ذلك. لزيادة قيمة ( )xبمقدار ،1وطباعة القيمة الجديدة: • �ش ّغل البرنامج ،ولاحظ قيم المتغير التي يتم طباعتها. ج ّرب كتابة المقطع البرمجي ال�سابق كما يلي ،ثم �ش ّغل البرنامج ،ماذا تلاحظ؟ ف�ّسر ذلك. تنفيذ أ�مر آ�خر با�ستخدام تعليمة else يمكنك تنفيذ �أمر آ�خر بعد الانتهاء من حلقة التكرار ،با�ستخدام تعليمة ،elseكما يلي: • اتبع خطوات إ�ن�شاء برنامج ،لتحديد ما يلي: 35
أ�ول ًا :التحليل المعطيات :ا ألعداد من � 1إلى 10 المطلوب� -1 :إن�شاء ع ّداد للعد من 1إ�لى .10 -2تنفيذ �أمر طباعة (« نهاية حلقة التكرار») بعد الإنتهاء من علمية التكرار. ثان ًيا :التخطيط البداية x=1 هل �صحيح True أ��ضف ال?ب0د1ا=ي<ةx x=x+1 �أطبع قيمة x الجديدة خط أ� False الخروج من حلقة التكرار اطبع عبارة (نهاية حلقة التكرار) النهاية 36
الدرس الثالث ثالثا :كتابة الأوامر البرمجية • �أ�ضف التعليمة elseو �أمر طباعة عبارة ( «نهاية حلقة التكرار») ،كالتالي: إ�يقاف حلقة التكرار يمكنك التحكم في حلقات التكرار و�إيقافها با�ستخدام أ�مر ،breakولإن�شاء برنامج ينهي حلقة التكرار عندما ت�صبح قيمة المتغير ( ،)x==5با�ستخدام الجملة ال�شرطية ifللتحقق من ال�شرط ،اتبع ما يلي: �أول ًا :التحليل المعطيات :ا ألعداد من � 1إلى 10 المطلوب� -1 :إن�شاء ع ّداد للعد من 1إ�لى .10 -2إ�يقاف حلقة التكرار عندما ت�صبح قيمة x=5 37
ثانيا :التخطيط البداية x=1 خط�أ False هل أ��ضف ? x<=10 x=x+1 �صحيح أ�طبع قيمة x True الجديدة الخروج من خط�أ Falseهل حلقة التكرار ? x=5 �صحيح True النهاية ثال ًثا :كتابة ا ألوامر البرمجية • أ��ضف في المقطع البرمجي ال�سابق جملة ال�شرط ( )ifللتحقق من أ�ن ( ،)n = 5و�أمر إ�يقاف break إلنهاء حلقة التكرار بعد تحقق ال�شرط كالتالي: 38
الدرس الثالث نشاط :8خ ّمن الرقم • اتبع خطوات �إن�شاء برنامج يطلب من الم�ستخدم تخمين رقم ،مع مراعاة ما يلي: -يكون الرقم مح�صور بين (� 1إلى .)9 -يتم تكرار محاولة إ�دخال الرقم ثلاث مرات فقط ،بحيث ين ِّفذ أ�حد ال�شرطين: � -1إذا أ�دخل الرقم ال�صحيح ،يطبع له عبارة (« أ�ح�سنت ،لقد أ�دخلت الرقم ال�صحيح ») ،ثم يتم �إيقاف حلقة التكرار. -2إ�ذا أ�دخل الرقم خط أ� ،يطبع له عبارة (« حاول مرة أ�خرى »). -«(3لإ�قذاداا��سستتننفف��دذتالمجمح�ي�عاواللامتحاالوثلالاثت»ة)د.ون أ�ن ينجح في معرف��ة الرقم المطلوب ،يطبع له عبارة 2جملة التكرار ()for ُت�ستخدم لتنفيذ جزء معين من الأوامر البرمجية لعدد مح َّدد من المرات ح�سب العنا�صر الم�سندة في القائمة ،بحيث يتم فيها تعريف متغير الع ّداد في بداية حلقة التكرار ،وفي كل مرة يتم زيادة المتغير و إ�عادة تنفيذ الأمر بعد جملة forحتى تنتهي عدد مرات التكرار ،كما يو�ضحه المخطط التالي: 39
البداية هل تمت لا �أعد تنفيذ ا ألمر طباااعللأبةخاديلايعرنة؟�صر نعم الخروج من حلقة التكرار النهاية يمكنك تنفيذ عملية التكرار با�ستخدام جملة forبطريقتين ،هما: التكرار مرة واحدة تتيح لك تنفيذ أ�وامر برمجية معينه مرة واحدة فقط لكل عن�صر ،ولطباعة كل عن�صر في قائمة من خلال المرور على جميع عنا�صرها ،اتبع مايلي: • افتح ملف جديد ،New Fileفي IDLEالمح ّرر ،و أ�حفظ الملف. • أ�ن�شئ قائمة ،listوع ّرفها با�سم وليكن ( ،)fruitsو أ��سند لها القيم التالية: [ ] orang , banana , apple , grapes • �أ�سند عنا�صر القائمة إ�لى متغير في كل حلقة تكرار وليكن ( ،)nكما يلي: 40
الدرس الثالث • �ش ّغل البرنامج ،ولاحظ طباعة عنا�صر القائمة ب�شكل مت�سل�سل. • أ��ضف أ�مر �إيقاف breakلإيقاف حلقة التكرار بعد طباعة العن�صر [ . ] apple ج ّرب طباعة المتغير ( ،)fruitsبكتابة �أمر طباعة كما يلي ، print )fruits( :ثم �ش ّغل البرنامج ،ماذا تلاحظ؟ ف�ّسر ذلك. التكرار با�ستخدام دالة النطاق ( ) range تتيح لك دالة النطاق ( ) rangeبتنفيذ عملية التكرار من خلال تحديد القيمة الإبتدائية لبدء عملية التكرار ،باحدى الطرق التالية: -تحديد عدد المرات (ُ :range (nت�ستخدم لتكرار �أمر بعدد مح َّدد من المرات يبد�أ من �صفر وينتهي بـ( .)n-1 و إلن�شاء برنامج يعمل على تكرار أ�وامر برمجية وطباعة عنا�صر القائمة من خلال تحديد رقم فهر�س العن�صر الذي ينتهي عنده التكرار ،اتبع مايلي: • �ش ِّغل البرنامج ،ولاحظ العنا�صر التي �سيتم طباعتها. كما تتيح لك دالة النطاق ( rangen (nتوليد �أرقام �صحيحة محددة ،ولإن�شاء برنامج يعمل على توليد �ستة �أرقام �صحيحة وطباعتها ،اتبع ما يلي: • �ش ِّغل البرنامج ،ولاحظ قيم العنا�صر التي يتم طباعتها. 41
نشاط :9جدول ضرب 2 • أ��ضف بع�ض التعديلات في المقطع البرمجي ال�سابق ليطبع لك حا�صل �ضرب العدد ()2 بحيث يكرر ا ألمر حتى ي�صل �إلى العدد (.)12 -تحديد البداية والنهاية (ُ : range (start, endت�ستخدم لتكرار أ�مر بعدد مح َّدد من المرات من خلال تحديد القيمة ا إلبتدائية لبدء عملية التكرار والقيمة النهائية. و إلن�ش��اء برنام��ج يعم��ل عل��ى تولي��د مجموع��ة �أرق��ام �صحيحة تب��د�أ م��ن( ،)2وتنتهي ب��ـ( ،)9ومن ثم طباعتها ،اتبع مايلي: • �ش ّغل البرنامج ،ولاحظ القيم التي يتم طباعتها. -تحديد البداية ،والنهاية ،وعدد القفزات (ُ :range )start, end, step sizeت�ستخدم لتكرار أ�مر بعدد محدد من المرات من خلال تحديد القيمة الإبتدائية لبدء عملية التكرار والقيمة النهائية ،وعدد القفزات، أ�ي يتم تجاهل عنا�صر معينة وعدم طباعتها. ولإن�شاء برنامج يعمل على توليد مجموعة �أرقام �صحيحة تبد�أ من ( ،)1وتنتهي بـ ( ،)9بحيث يزيد عددان في كل مرة ،ومن ثم طباعة الأرقام الناتجة ،اتبع مايلي: • �ش ّغل البرنامج ،ولاحظ القيم التي يتم طباعتها. 42
الدرس الثالث كيف يمكنك أ�ن تجعل البرنامج يعمل على توليد الأرقام بطريقة عك�سية� ،أي من فكر؟ ا ألكبر ا أل�صغر؟ تذكر! لا يمكنك أ�ن تحفظ جميع الأوام�ر البرمجية ،فقط تعلم ا أل�سا�سيات التي ت�ستخدمها با�ستمرار ،و�أقر�أ كثي ًرا في م�صادر البحث المختلفة. 43
44
الدرس الرابع الوحدات البرمجية الوحدة Moduleعبارة عن ملف يحتوي على أ�وامر ،ودوال برمجية جاهزة ،يتم ا�ستيرادها إ�ل��ى البرنامج لتنفي��ذ وظائف مختلفة ولت�سهي��ل إ�دارة الم�شاريع يوف��ر البايثون العديد من الوح��دات البرمجي��ة ،مثل :وح��دة واجهة الم�ستخ��دم الر�سومي��ة ،tkinter moduleووحدة الع�شوائية ، random moduleووحدة الر�سم .turtle module وحدة Turtle Module يحتويالبايثونعلىوحدةالر�سمTurtle Moduleالتيتتيحلكر�سمر�سوماتمتجهة )Vector (graphics ثنائية ا ألبعاد 2Dب أ�لوان مختلفة ،و إ�ن�شاء �أنظمة المحاكاة والألعاب التفاعلية وغيرها. ولا�ستك�شاف نماذج من ا ألمثلة الر�سومية لوحدة الر�سم المتاحة في البايثون ،اتبع ما يلي: من نافذة ا ألوامر :Python Shell • انقر قائمة الم�ساعدة .Help 1اختر أمر Turtle Demo 45
من النافذة التي تظهر لك: لاحظ ظهور المقطع 3شغل المقطع البرمجي ،ولاحظ ظهور 2انقر قائمة أمثلة ،Examples البرمجي للمثال الذي الرسم التوضيحي له في لوحة الرسم ثم اختر round_dance اخترته نشاط :10الأشكال المتحركة • ت�أمل المقطع البرمجي لمثال ،round_danceو أ�جب عن الأ�سئلة التالية: -ما الأمر البرمجي الم�ستخدم في ر�سم �شكل المثلث؟ -ما الأوامر البرمجية الم�ستخدمة في ر�سم الأ�شكال المركبة؟ -ما الأوامر البرمجية الم�ستخدمة في تحريك الأ�شكال؟ • ا�ستك�شف نماذج أ�خرى لوحدة الر�سم ،ولاحظ نتيجة تنفيذها. 46
الدرس الرابع استدعاء وحدة الرسم لتتمكن من ا�ستخدام وحدة ال�سلحفاة في ر�سم الأ�شكال وا إل�ستفادة من وظائفها ،عليك �أو اًل ا�ستدعاءها، وا�ستيراد لوحة الر�سم الخا�صة بها ،Canvasباتباع مايلي: • افتح نافذة جديدة في IDLEالمح ِّرر ،واحفظ الملف. تجن��ب حف��ظ المل��ف با�س� �م ( ،)turtle.pyحت� �ى لا يتعار����ض م��ع ا إل�س��م ا إلفترا�ضي لا�ستيراد وحدة الر�سم .turtle • �ش ِّغل البرنامج ،لتفتح لك نافذة لوحة الر�سم ،Canvasالتالية: Y لاحظ أن مؤشر الرسم يبدأ من X منتصف الشاشة ،أي أن أحداثيات موضع المؤشر على المحاور Xو Yهي ،)0,0( -Xويكون متجه نحو اليمين. -Y 47
رسم الأشكال تتيح لك وحدة ال�سلحفاة ر�سم كائنات و�أ�شكال مختلفة ،من خلال تحديد نقاط الر�سم أ�و الم�سافة التي يقطعها الم�ؤ�شر �أثناء الحركة. يمكنك تحريك الم�ؤ�شر ور�سم الأ�شكال في وحدة ال�سلحفاة ،با�ستخدم احدى الطريقتين: 1تحديد �إحداثيات مو�ضع الم�ؤ�شر ُي�ستخدم �أمر ( )gotoلتحريك الم�ؤ�شر من خلال تحديد ا إلحداثيات التي �سيتحرك بها الم ؤ��شر على ال�شا�شة. ولتحريك الم�ؤ�شر �إلى �أعلى باتجاه المحور ( ،)Yلم�سافة مقدارها ( )100بك�سل ،Pixelاتبع مايلي: • �ش ِّغل البرنامج ،ولاحظ اتجاه حركة الم ؤ��شر. ج ّرب تغيير قيمة الإحداثيات ،و�شغل البرنامج ،ولاحظ اتجاه حركة الم ؤ��شر. معلومة تهمك • ُت�ستخدم وحدة البك�سل Pixelلقيا�س الم�سافة التي يتحركها الم�ؤ�شر على لوحة الر�سم. 2تحديد اتجاه الم ؤ��شر يمكنك تحريك الم ؤ��شر من خلال تحديد �أحد ا إلتجاهات الأربعة ( أ�مام ،وخلف ،دوران مع عقارب ال�ساعة، ودوران عك�س عقارب ال�ساعة). 48
الدرس الرابع ولتحريك الم�ؤ�شر باتجاه ا ألمام با�ستخدام دالة ( ) ،forwardلم�سافة مقدارها ( )100بك�سل ،اتبع مايلي: • �ش ِّغل البرنامج ،ولاحظ حركة الم�ؤ�شر. ولر�سم �شكل هند�سي ،وليكن مربع من خلال تحديد إ�تجاه الم ؤ��شر ،اتبع مايلي: • �ش ِّغل البرنامج ،ولاحظ ر�سم ال�شكل. 49
معلومة تهمك • يمكنك تحريك م�ؤ�شرالر�سم في اتجاه مح َّدد ،با�ستخدام الدوال التالية: اخت�صارها الوظيفة ا�سم الدالة ( )fd تحريك م�ؤ�شر الر�سم �إلى ا ألمام م�سافة محددة ( )forward ( ) backwardتحريك م ؤ��شر الر�سم �إلى الخلف م�سافة محددة ( )bk ( ) rightتحريك الم ؤ��شر باتجاه عقارب ال�ساعة بزاوية محددة ( )rt ( ) leftتحريك الم�ؤ�شر باتجاه عك�س عقارب ال�ساعة بزاوية محددة ( )lt نشاط :11رسم المضلعات • ا�ستخ��دم حلق��ة التك��رار ،forوغ ّي��ر م��ا يل��زم ف��ي المقط��ع البرمج��ي ال�سابق ،لر�س��م �أ�شكال هند�سية منتظمة �أخرى (مثلث ،خما�سي� ،سدا�سي.).... ، لر�سم �شكل حلزوني ،با�ستخدام دالة التكرار � ،forأكتب ا ألوامر البرمجية التالية: • �ش ِّغل البرنامج ،ولاحظ ال�شكل الناتج. 50
Search