Introduction to Python Programming Unit Three PDF

Document Details

DedicatedSilver

Uploaded by DedicatedSilver

الحكم بن هشام بالمهد - مسارات

2023

Tags

python programming programming concepts algorithms computer science

Summary

This document introduces basic Python programming concepts for secondary school students. It covers topics such as algorithms, flowcharts, variables, and basic programming concepts. The document is part of a curriculum from the Ministry of Education in Saudi Arabia, 2023.

Full Transcript

‫الوحدة الثالثة‪:‬‬ ‫ن‬ ‫مقدمة ي� لﻐة برمجة بايثون‬ ‫في هذه الوحدة ﺳتﺘعرف أ�ثر على البرﻧامج‪ ،‬وأشكال‬ ‫الﺘعليمات البرمجية بلﻐات البرمجة المخﺘلفة‪ .‬كما‬ ‫ﺳتﺘعلﻢ كيف يمكﻨﻚ تمثيل الخوارزمية باﺳﺘخدام‬ ‫المخطﻂ اإلنسيابي‪.‬‬ ‫أهداف الﺘعلﻢ‬ ‫ﺳتﺘعلﻢ في هذه الوحدة‪:‬‬ ‫> ماهية لﻐة برمجة بايثون‪.‬‬ ‫> مفهو...

‫الوحدة الثالثة‪:‬‬ ‫ن‬ ‫مقدمة ي� لﻐة برمجة بايثون‬ ‫في هذه الوحدة ﺳتﺘعرف أ�ثر على البرﻧامج‪ ،‬وأشكال‬ ‫الﺘعليمات البرمجية بلﻐات البرمجة المخﺘلفة‪ .‬كما‬ ‫ﺳتﺘعلﻢ كيف يمكﻨﻚ تمثيل الخوارزمية باﺳﺘخدام‬ ‫المخطﻂ اإلنسيابي‪.‬‬ ‫أهداف الﺘعلﻢ‬ ‫ﺳتﺘعلﻢ في هذه الوحدة‪:‬‬ ‫> ماهية لﻐة برمجة بايثون‪.‬‬ ‫> مفهوم الخوارزمية‪.‬‬ ‫> كﺘابة الخطوات الخوارزمية‪.‬‬ ‫> تقسيﻢ المشكلة إلى مهام أصﻐر‪.‬‬ ‫> مفهوم المخطﻂ االنسيابي‪.‬‬ ‫> تمثيل الخطوات الخوارزمية باﺳﺘخدام‬ ‫مخططات االنسياب‪.‬‬ ‫> مراحل تكوين البرﻧامج‪.‬‬ ‫> الﺘمﻴﻴﺰ بﻴن أﻧواع المﺘﻐﻴرات‪.‬‬ ‫‪92‬‬ ‫> تعﻴﻴن قيﻢ للمﺘﻐﻴرات بطرق مخﺘلفة‪.‬‬ ‫اﻷدوات‬ ‫> إدخال قيمة للمﺘﻐﻴر‪.‬‬ ‫> ب�ﺌة الﺘطوير المﺘكاملة للﻐة بايثون‬ ‫)‪)Python IDLE‬‬ ‫الدرس اﻷول‪:‬‬ ‫ال�ﻧامج؟‬ ‫ما �‬ ‫يتعلم اإلنسان اتباع القواعد منذ نعومة أظفاره‪ ،‬وهكذا �ستمر باتباع القواعد طوال حياته‪.‬‬ ‫إن ما يقوم اإلنسان بعمله عند االستيقاظ كل صباح هو أ�سر مثال على تلك القواعد‪.‬‬ ‫قد ال تكون القواعد واضحة ً‬ ‫دائما‪ ،‬وفي بعﺾ األحيان قد يحتاج األشخاص إلى وضع‬ ‫ً‬ ‫قواعد جديدة وفقا لمواقف محددة‪.‬‬ ‫ال يمكن ألجهزة الحاسب اتخاذ القرارات بنفسها‪ ،‬بل تتبع تعليمات محددة للغاية‪.‬‬ ‫البرﻧامج هو مجموعة من اﻷوامر المكﺘو�ة بلﻐة برمجة معﻴﻨة لﺘﻨفيذ مهمة محددة‪.‬‬ ‫ً‬ ‫كيف أ�ﺘﺐ برﻧامجا؟‬ ‫ُيكتب البرنامج من ِقبل المبرمج‪ ،‬ويقوم الحاسب بقراءة التعليمات المقدمة له بلغة‬ ‫اﻵلة وهي اللغة الوحيدة التي يفهمها الحاسب وتتكون من ‪ 1‬و ‪ .0‬في الواقع �ستحيل‬ ‫على المبرمج كتابة برنامج بلغة اﻵلة المكونة من ‪ 1‬و ‪ ،0‬ولذلك �ستخدم المبرمجون‬ ‫لغات برمجة "ذات مستوى أعلى" لكتابة البرنامج بكلمات مفهومة تصف التعليمات‬ ‫للحاسب‪ .‬وبمجرد كتابة البرنامج بلغة برمجة معينة‪� ،‬ستخدم المبرمج أدوات لتحويل‬ ‫هذه التعليمات إلى لغة اﻵلة التي يمكن تنفيذها بواسطة الحاسب‪.‬‬ ‫اﺳتيقﻆ‬ ‫�‬ ‫ﻧظف أﺳﻨاﻧﻚ‬ ‫توضأ للصاة‬ ‫ِّ‬ ‫أد الصاة‬ ‫تﻨاول فطورك‬ ‫ارتد ما�سﻚ‬ ‫ِ‬ ‫اذهﺐ إلى المدرﺳة‬ ‫لﻐة برمجة بايثون‬ ‫هناك المئات من لغات البرمجة‪ ،‬وستستخدم لﻐة برمجة بايثون (‪ )Python‬لكتابة برنامجك األول‪.‬‬ ‫لغة برمجة بايثون هي لغة عالمية عالية المستوى مفتوحة المصدر وسهلة التعلم‪ ،‬تعتمد على كتابة األكواد (التعليمات البرمجية)‪ .‬يمكن‬ ‫ُ‬ ‫استخدامها مع مجموعة متنوعة من التطبيقات وتعد سهلة وممتعة للمبتدئين بالبرمجة‪.‬‬ ‫لمحة تاريخية‬ ‫تم إنشاء بايثون على يد جويدو فان روسوم عام ‪.1991‬‬ ‫‪93‬‬ ‫ال�مجية بلﻐات برمجة مخﺘلفة‬ � ‫الﺘعليمات‬ ‫سكراتﺶ‬ #Hello world! in Python print("Hello world!") ‫لغة برمجة بايثون‬ ‘ Hello world! in Small Basic TextWindow.WriteLine ("Hello world!") ‫سمول بيزيك‬ /* Hello world! in C Ansi */ #include <stdio.h> #include <stdlib.h> int main(void) { puts("Hello world!"); return EXIT_SUCCESS; ‫أنسي سي‬ } # Hello world! in Ruby puts "Hello world!" ‫روبي‬ ‫يعﺘمد اخﺘيار لﻐة‬ ‫البرمجة على الﺘطبﻴﻖ‬ .‫الذي ت�يد إنشاءه‬ //Hello world! in C# class Hello world { static void Main() { System.Console.WriteLine("Hello world!"); } } ‫سي شارب‬ ‫معلومة‬ ً ً .‫ فستكون النتيجة خطأ ولن يتم إنجاز العمل بالشكل المطلوب‬،‫ لذلك إذا تم إعطاؤها تعليمات خطأ‬،‫تنفذ أجهزة الحاسب التعليمات‬ 94 ‫قبل بدء البرمجة‪ ،‬يجب أن تتعرف على بعﺾ المفاهيم األساسية في البرمجة‪.‬‬ ‫الخوارزمية‬ ‫ً‬ ‫تعلمت سابقا أن الخوارزمية هي قائمة من التعليمات يتم اتباعها خطوة بخطوة لحل مشكلة معينة‪ ،‬ومن المهم أن تكون هذه التعليمات‬ ‫واضحة وسهلة ليتم تنفيذها دون أخطاء‪.‬‬ ‫المدخات‬ ‫الخوارزمية‬ ‫المخرجات‬ ‫ن‬ ‫الخوارزميات ي� حياتﻨا الﻴومية‬ ‫تجد الخوارزميات في كثير من شﺆون حياتك اليومية‪ .‬فاتجاهات الوصول إلى المتنزه هي خوارزمية‪ ،‬وكذلك وصفة إعداد الطعام‬ ‫طبﻖ لذيذ‪.‬‬ ‫هي خوارزمية‪ ،‬حيث تخبرك بالخطوات التي يجب اتباعها إلعداد ٍ‬ ‫المدخات‬ ‫الخوارزمية‬ ‫المخرجات‬ ‫(المكونات)‬ ‫(إجراءات الطهي)‬ ‫(طبﻖ شهي)‬ ‫اكتب خوارزمية إلعداد فطيرة محالة‬ ‫جرب بﻨفسﻚ‬ ‫‪95‬‬ ‫المخطﻂ‬ ‫االنسيا� )‪)Flowchart‬‬ ‫�ي‬ ‫المخطط االنسيابي هو نوع من أنواع المخططات البيانية �ستخدم لتمثيل الخوارزمية ويعرض الخطوات التي تحتاج إلى اتباعها‬ ‫بالترتيب الصحيح‪ .‬يقدم هذا المخطط حل المشكلة خطوة بخطوة وبصورة واضحة وذلك بتقسيمها إلى مهام أصغر أو تعليمات‬ ‫محددة‪ .‬يمكنك إنشاء مخططات انسيابية لوصف أفكارك حول كيفية حل مشكلة باستخدام الحاسب قبل كتابة البرنامج ً‬ ‫فعليا‪.‬‬ ‫يمكنك تمثيل خطوات الخوارزمية برسم أربعة أنواع مختلفة من األشكال تعكس إجراءاتها المختلفة َثم ربط األشكال باألسهم إلظهار‬ ‫ترتيبها‪.‬‬ ‫نوع الشكل‬ ‫البداية � النهاية‬ ‫اإلدخال � اإلخراج‬ ‫الوصف‬ ‫اإلشارة إلى بداية ونهاية البرنامج‪.‬‬ ‫استقبال وعرض البيانات التي سيتم معالجتها (إدخال و�خراج)‪.‬‬ ‫العمليات‬ ‫تنفيذ عملية رياضية‪.‬‬ ‫اتخاذ قرار‬ ‫اتخاذ قرارات (نعم أو ال) أو اختبارات تحقﻖ (صواب أو خطأ)‪.‬‬ ‫عرض التسلسل الذي يجب تنفيذ الخطوات به‪.‬‬ ‫استقبال بيانات‬ ‫البداية‬ ‫بداية العملية‬ ‫المدخالت‬ ‫اتخاذ قرار‬ ‫بنعم أو بال‬ ‫ال‬ ‫عملية‬ ‫قرار‬ ‫ال� نعم‬ ‫تنفيذ مهمة‬ ‫معينة‬ ‫ارجع للخطوة السابقة أو‬ ‫اتجه للخطوة الالحقة‬ ‫ﻧعﻢ‬ ‫عملية‬ ‫المخرجات‬ ‫عرض البيانات‬ ‫المعالجة‬ ‫‪96‬‬ ‫نهاية العملية‬ ‫النهاية‬ ‫عﻨد رﺳﻢ مخطﻂ انسيابي‪ ،‬تأ�د من‪:‬‬ ‫< أن يحتوي المخطط االنسيابي على نقطة بداية‬ ‫ونقطة نهاية‪.‬‬ ‫البداية‬ ‫< عدم تقاطع خطوط األسهم التي تربط بعﺾ‬ ‫اإلجراءات ببعﺾ‪.‬‬ ‫اجمع المكونات‬ ‫< تضمين جميع اإلجراءات في المخطط االنسيابي‪.‬‬ ‫ال‬ ‫ال�ﻧامج‬ ‫مراحل إنشاء �‬ ‫هل لديك جميع‬ ‫المكونات؟‬ ‫ﻧعﻢ‬ ‫اخلط البيكنج بودر‬ ‫والطحين‬ ‫اشتر المكونات‬ ‫�‬ ‫ً‬ ‫أواًل‪ :‬تحديد المشكلة‪.‬‬ ‫أضف السكر والملح‬ ‫أضف الحليب والبيﺾ‬ ‫وال�بدة المذابة‬ ‫ً‬ ‫ثانيا‪ :‬كتابة الخطوات‬ ‫الخوارزمية الالزمة لحلها‬ ‫بترتيب متسلسل‪.‬‬ ‫اخلطها ً‬ ‫معا‬ ‫ً‬ ‫ثالثا‪ :‬رسم المخطط‬ ‫االنسيابي ً‬ ‫بناء على‬ ‫الخطوات الخوارزمية‪.‬‬ ‫ال‬ ‫هل الخليط متجانس؟‬ ‫ﻧعﻢ‬ ‫ضعه في مقالة‬ ‫ر ً‬ ‫ابعا‪ :‬كتابة البرنامج‬ ‫بلغة البرمجة‪.‬‬ ‫اطهه لمدة دقيقتين‬ ‫اقلب الفطيرة‬ ‫المخطط االنسيابي‬ ‫لعمل فطيرة محالة‬ ‫ال‬ ‫ﱢ‬ ‫هل لون الفطيرة ُبني من‬ ‫كلتا الجهتين؟‬ ‫ﻧعﻢ‬ ‫قدمها مع الشراب‬ ‫المحبب لديك‪.‬‬ ‫النهاية‬ ‫‪97‬‬ ‫تع�يف المشكلة‬ ‫قبل البدء بتصميم البرنامج‪ ،‬يتعين عليك فهم المشكلة التي يجب عليك حلها لتحديد المدخالت والمخرجات وما يجب فعله لتحقيﻖ‬ ‫ً‬ ‫هدفك‪ .‬على س�يل المثال‪ ،‬افترض أنك تريد حساب مساحة المستطيل‪ .‬أواًل‪ ،‬عليك التفكير في الخطوات الالزمة للحصول على‬ ‫ُ‬ ‫ُ َ‬ ‫عدي الشكل (العرض والطول)‪ .‬تستخدم المعادلة التالية لحساب المساحة‪:‬‬ ‫إجابتك‪ .‬ستحتاج في هذا المثال إلى معرفة ب‬ ‫المساحة = الطول × العرض (‪.)Area = Width x Length‬‬ ‫البداية‬ ‫‪1‬‬ ‫احصل على العرض‬ ‫‪2‬‬ ‫احصل على الطول‬ ‫‪3‬‬ ‫اضرب الطول بالعرض‬ ‫‪4‬‬ ‫اعرض النتيجة‬ ‫احصل عىل العرض‬ ‫احصل عىل الطول‬ ‫خطوات الخوارزمية‬ ‫ُ‬ ‫يطلﻖ على اﻷداة المسﺘخدمة لﺘحويل‬ ‫تعليمات لﻐة البرمجة عالية المسﺘوى‬ ‫إلى لﻐة اآللة لكي يفهمها الحاﺳﺐ اﺳﻢ‬ ‫محول برمجي )‪.)Compiler‬‬ ‫اضرب الطول بالعرض‬ ‫اعرض النتيجة‬ ‫المخطط االنسيابي‬ ‫النهاية‬ ‫لﻨ�مج‬ ‫هيا �‬ ‫لكتابة برنامجك بلغة البايثون‪ ،‬يجب عليك تحويل المخطط االنسيابي إلى لغة برمجة‪ .‬سيحسب البرنامج التالي مساحة المستطيل في‬ ‫بايثون‪ .‬ستتعلم ً‬ ‫قريبا كيفية كتابة تعليماتك البرمجية بنفسك‪.‬‬ ‫التعليمات البرمجية‬ ‫‪98‬‬ ‫)"لتحسب مساحة المستطيل"(‪print‬‬ ‫)"اكتب طول المستطيل‪print(" :‬‬ ‫))(‪length=int(input‬‬ ‫)"اكتب عرض المستطيل‪print(" :‬‬ ‫))(‪width=int(input‬‬ ‫‪area=length * width‬‬ ‫)‪",area‬مساحة المستطيل هي‪print(" :‬‬ ‫لﻨطبﻖ ً‬ ‫معا‬ ‫تدريﺐ ‪1‬‬ ‫ﻃلﺐ مﻨﻚ معلمﻚ إنشاء برﻧامج لحساب مﺘوﺳﻂ رقمﻴن‪ ،‬وزودك بالخوارزمية الازمة ول�ﻨها ﻏﻴر‬ ‫مرتبة‪ ،‬رتﺐ الخطوات �شكل صحﻴح ﺛﻢ ارﺳﻢ المخطﻂ االنسيابي للخوارزمية‪.‬‬ ‫احسﺐ مﺘوﺳﻂ رقمﻴن‪.‬‬ ‫المخطﻂ االنسيابي‬ ‫اعرض الﻨتيجة على الشاشة‪.‬‬ ‫أدخل الرقمﻴن‪.‬‬ ‫خطوات الخوارزمية‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪99‬‬ ‫تدريﺐ ‪2‬‬ ‫ً‬ ‫ً‬ ‫انسيابيا للخوارزمية‪.‬‬ ‫ارﺳﻢ مخططا‬ ‫أدخل درجاتﻚ في ﺛاث مواد‪.‬‬ ‫احسﺐ المجموع‪.‬‬ ‫احسﺐ المﺘوﺳﻂ بقسمة المجموع على ‪.3‬‬ ‫اﻃبع الﻨتيجة على الشاشة‪.‬‬ ‫‪100‬‬ ‫تدريﺐ ‪3‬‬ ‫َ ْ‬ ‫أ ِعد رﺳﻢ المخطﻂ االنسيابي الﺘالي‬ ‫الذي ِّ‬ ‫يحول ال�يلو مﺘرات إلى أميال‪.‬‬ ‫بعد ترت�ﺐ اﻷشكال �شكل صحﻴح‪،‬‬ ‫ا�ﺘﺐ خطوات الخوارزمية للمخطﻂ‬ ‫االنسيابي‪.‬‬ ‫ً‬ ‫علما أن الميل = ‪ 1.61‬كيلو مﺘر‪.‬‬ ‫خطوات الخوارزمية‬ ‫المخطﻂ االنسيابي‬ ‫عرض النتيجة‬ ‫األميال = الكيلو مترات � ‪1.61‬‬ ‫البداية‬ ‫‪1‬‬ ‫احصل على عدد (الكيلو مترات)‬ ‫‪2‬‬ ‫النهاية‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪5‬‬ ‫‪101‬‬ ‫ن‬ ‫الثا�‪:‬‬ ‫الدرس‬ ‫ي‬ ‫المﺘﻐ�ات والثوابﺖ‬ ‫�‬ ‫في هذا الدرس ستستخدم ب�ﺌة الﺘطوير المﺘكاملة للﻐة بايثون (‪ )Python IDLE‬الموجودة في جهازك‪ ،‬لكتابة وتشغيل برامج‬ ‫بايثون الخاصة بك‪ ،‬كما ستتعلم كيفية إنشاء واستخدام المتغيرات والثوابت في برنامجك‪.‬‬ ‫فﺘح ب�ﺌة الﺘطوير‬ ‫لفﺘح ب�ﺌة الﺘطوير المﺘكاملة للﻐة بايثون‪:‬‬ ‫< اضغط على ‪( Start‬ابدأ)‪.‬‬ ‫‪1‬‬ ‫< مرر لﻸسفل ثم اضغط على ‪( Python3.9‬مجلد بايثون ‪.)3.9‬‬ ‫< اضغط على (‪.IDLE )Python 3.9 64-bit‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫تتيح لك قائمة ملف (‪ )File‬إجراء العمليات األساسية مثل فتح البرامج أو الحفﻆ أو الطباعة‪.‬‬ ‫ُ‬ ‫تستخدم قائمة شيل (‪ )Shell‬إلعادة تعيين بيئة التعليمات البرمجية‪.‬‬ ‫ُ‬ ‫تستخدم قائمة تصحﻴح (‪ )Debug‬لتتبع وتشخيص األخطاء داخل برنامجك‪.‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫اكتب برنامجك هنا‪.‬‬ ‫‪1‬‬ ‫ُ ّ‬ ‫تعد لﻐات فيجوال ب�سﻚ‬ ‫)‪ )Visual Basic‬وجافا‬ ‫ﺳك�ي�ﺖ )‪ )JavaScript‬لﻐات‬ ‫برمجة عالية المسﺘوى‪.‬‬ ‫‪102‬‬ ‫ً‬ ‫لﻐة البرمجة عالية المسﺘوى تسﺘخدم كلمات من اللﻐة االعﺘيادية‪ ،‬وتحﺘوي أيضا على كلمات‬ ‫ومصطلحات وترا�يﺐ بﻨاء الجملة تحﺘاج إلى تعلمها‪ .‬على ﺳبيل المثال‪� :‬سﺘخدم بايثون كلمات‬ ‫"‪ "print‬و "‪ "input‬من اللﻐة اإلﻧجلﻴﺰية لتشكيل الﺘعليمات‪ .‬في المقابل هﻨاك بعﺾ العبارات‬ ‫والكلمات الرئ�سة مثل‪ "elif" :‬و "‪ "def‬تسﺘخدم فقﻂ في لﻐة البرمجة‪.‬‬ ‫ال�مجة‬ ‫إنشاء ملف �‬ ‫يمكنك كتابة التعليمات البرمجية في بايثون مباشرة من خالل ب�ﺌة الﺘطوير المﺘكاملة للﻐة بايثون (‪ ،)Python IDLE‬أو استخدامها‬ ‫لتشغيل البرنامج فقط‪ ،‬ولكن في هذه الحالة ال يمكنك إجراء أي تغييرات على األوامر التي تم تنفيذها بالفعل‪.‬‬ ‫حل هذه المشكلة عن طريﻖ إنشاء البرنامج في ملف باستخدام محرر النصوص المتوفر في ‪ ،IDLE‬وحفظه‪ ،‬ثم تشغيله في بيئة ‪.IDLE‬‬ ‫بهذه الطريقة يمكنك إجراء العديد من التغييرات التي تحتاجها في الملف واإلبقاء فقط على بيئة ‪ IDLE Shell‬لتشغيل البرنامج فقط‪.‬‬ ‫إلنشاء ملف البرمجة‪:‬‬ ‫< اضغط على قائمة ‪( File‬ملف)‪ 1 ،‬ثم اضغط على‬ ‫‪( New File‬ملف جديد) إلنشاء ملف جديد‪2 .‬‬ ‫< سيفتح محرر النصوص‪.‬‬ ‫< اكتب برنامجك‪.‬‬ ‫‪3‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫محرر النصوص‬ ‫ً‬ ‫"مرحبا بك في بايثون"(‪print‬‬ ‫)‬ ‫‪3‬‬ ‫هذا مثال بسيط لبرنامج تمت كتابته في‬ ‫محرر النصوص الستخدام دالة الطباعة‪.‬‬ ‫‪103‬‬ ‫ً‬ ‫جاهزا لتشغيله‪.‬‬ ‫اﻵن وبعد أن كتبت السطر األول من التعليمات البرمجية‪ ،‬احفﻆ برنامجك وبذلك يكون‬ ‫لحفﻆ البرﻧامج وتشﻐيله‪:‬‬ ‫< من قائمة ‪( File‬ملف)‪ ،‬اضغط على ‪( Save‬حفﻆ)‪.‬‬ ‫< اكتب اسم الملف‪،‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫ثم اضغط على ‪( Save‬حفﻆ) لحفﻆ البرنامج ‪.‬‬ ‫‪3‬‬ ‫< اضغط على ‪( Run‬تشغيل)‪ 4 ،‬ثم اضغط على ‪( Run Module‬تشغيل‬ ‫الوحدة النمطية) لتشغيل برنامجك‪5 .‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪104‬‬ ‫‪4‬‬ ‫‪5‬‬ ‫بيئة التشغيل‬ ‫ن‬ ‫ً‬ ‫مرحبا بك ي� بايثون‬ ‫>>>‬ ‫كما رأيت في المثال السابﻖ‪ ،‬فإن أبسط أمر يمكن كتابته في بايثون أمر‬ ‫طباعة نص على الشاشة‪ .‬الدالة التي يتم استخدامها لعرض النص على‬ ‫الشاشة في بايثون هي دالة الطباعة () ‪ .print‬إذا أردت كتابة نص معين‪،‬‬ ‫يتعين عليك وضعه داخل عالمتي تنصيص‪.‬‬ ‫ُ‬ ‫�سﺘخدم برﻧامج بايثون دوال مدمجة ودوال يعرفها‬ ‫المسﺘخدم‪ .‬الدالة المدمجة يﺘﻢ تحديدها بالفعل في‬ ‫البرﻧامج ويمكن للمسﺘخدمﻴن اﺳﺘخدامها مباشرة‬ ‫ً‬ ‫في برامجهﻢ‪ .‬تعد دوال )) ‪ print‬و )) ‪ input‬بعضا‬ ‫من هذه الدوال الﺘي ﺳتسﺘخدمها في هذا الدرس‪.‬‬ ‫حاول أن تطبع الرسائل التالية‪:‬‬ ‫أتعلم لغة بايثون‬ ‫جرب بﻨفسﻚ‬ ‫ُ‬ ‫أحب البرمجة‬ ‫‪105‬‬ ‫مثال تطبيقي‪ :‬لعبة السباق الثاﺛي‪.‬‬ ‫نامجا ً‬ ‫ستنشئ في هذا الدرس بر ً‬ ‫خاصا بلعبة السباق الثالثي‪ .‬سيسأل البرنامج المستخدم عن اسم الرياضي ونتائجه في الرياضات‬ ‫ُ‬ ‫ستحسب النتيجة النهائية للرياضي وأفضل أداء له‪.‬‬ ‫الثالث‪ ،‬بعد ذلك‬ ‫السباق الثاﺛي هو ﺳباق تحمل يقوم‬ ‫فيه ال�ياضﻴﻴن بالمﻨافسة على ﺛاث‬ ‫رياضات مﺘواصلة )السباحة ﺛﻢ ركوب‬ ‫الدراجة ﺛﻢ الجري) ويﺘﻢ حساب الوقﺖ‬ ‫لكل رياضة‪ ،‬ﺛﻢ اإلجمالي لكل ال�ياضات‪.‬‬ ‫)"لعبة السباق الثالثي"(‪print‬‬ ‫المﺘﻐ�ات‬ ‫�‬ ‫ً‬ ‫المتغير هو مكان محجوز في ذاكرة الحاسب ُ�ستخدم لتخ�ين قيمة يتم إدخالها‪ .‬تمثل المتغيرات أنواعا مختلفة من البيانات‪ ،‬ويمكن أن‬ ‫تتغير قيمة المتغير أثناء تنفيذ البرنامج‪ .‬تنقسم المتغيرات إلى فئتين رئيستين هما األرقام والنصوص‪ .‬تدعم بايثون نوعين من األرقام‪:‬‬ ‫ُ‬ ‫األعداد الصحيحة واألعداد بفاصلة عشرية (العشرية)‪ .‬وكما في ﺳكراتﺶ (‪ )Scratch‬فإن المتغيرات النصية تسمى ﺳلسلة ﻧصية‬ ‫(‪.)String‬‬ ‫اﻷعداد )المﺘﻐﻴرات العددية)‬ ‫‪level=3‬‬ ‫‪score=1200‬‬ ‫‪TotalAmount=120.50‬‬ ‫الﻨص )المﺘﻐﻴرات الﻨصية)‬ ‫"هل تريد اللعب مرة أخرى؟نعم �ال "=‪Message‬‬ ‫"محمد"=‪MyName‬‬ ‫"‪EmailAddress="[email protected]‬‬ ‫‪106‬‬ ‫أﺳماء المﺘﻐﻴرات‬ ‫ً‬ ‫ً‬ ‫قد يكون للمتغير اسم قصير مثل ‪ X‬أو ‪ ،Y‬أو اسما وصفيا مثل ‪.age ،carname ،total_volume‬‬ ‫الشروط الواجب توفرها في اسم المتغير‪:‬‬ ‫َ‬ ‫بشرطة سفلية‪.‬‬ ‫< أن يبدأ بحرف أو‬ ‫ّ‬ ‫< أاًل يبدأ برقم‪.‬‬ ‫< يمكن استخدام األحرف اإلنجليزية واألرقام والشرطة السفلية (أرقام من ‪ ،0-9‬أحرف كبيرة من ‪ ،A-Z‬أحرف صغيرة ‪.)_ ،a-z‬‬ ‫ً‬ ‫< حالة الحروف اإلنجليزية مهمة‪ ،‬فمثاًل تعتبر األسماء التالية ‪ age ،Age ،AGE‬بمثابة ثالثة متغيرات مختلفة‪.‬‬ ‫< يفضل إعطاء أسماء للمتغيرات تمثل المحتوى وذلك لفهم ما يمثله كل متغير داخل التعليمات البرمجية‪.‬‬ ‫تحقﻖ من األسماء أدناه وحدد أسماء المتغيرات الصحيحة بوضع إشارة‬ ‫‪.‬‬ ‫‪2AB‬‬ ‫جرب بﻨفسﻚ‬ ‫‪CourseName‬‬ ‫‪GrAdE‬‬ ‫‪True‬‬ ‫تخصيص قيمة لمﺘﻐﻴر‬ ‫يمكنك استخدام عالمة �ساوي (=) لتعيين‬ ‫قيمة ألحد المتغيرات ‪ .‬ال تستخدم عالمة‬ ‫�ساوي (=) في البرمجة كما في الرياضيات ‪.‬‬ ‫فعلى س�يل المثال‪ x = 15 ،‬تعني أنك تأخذ‬ ‫القيمة ‪ 15‬كرقم وتخصصها للمتغير المسمى ‪.x‬‬ ‫ً‬ ‫يمكنك أيضا حساب أي شيء على الجانب‬ ‫األيمن من عالمة المساواة ثم إسناد النتيجة إلى‬ ‫المتغير الموجود على الجانب األ�سر‪ .‬شاهد‬ ‫المثال اﻵتي‪:‬‬ ‫تحديد قيمة المتغير ‪.y‬‬ ‫تحديد قيمة المتغير ‪.x‬‬ ‫‪x=15‬‬ ‫‪y=20‬‬ ‫‪Total=x+y‬‬ ‫)‪print(Total‬‬ ‫إضافة متغير إلى متغير‬ ‫آخر‪ .‬في هذا المثال يعمل‬ ‫(‪ )+‬كمعامل رياضي وتسند‬ ‫النتيجة في المتغير ‪.total‬‬ ‫يعرض قيمة المتغير‬ ‫‪ Total‬على الشاشة‪.‬‬ ‫‪35‬‬ ‫معلومة‬ ‫ال يمكن استخدام بعﺾ األسماء لكونها كلمات خاصة تستعمل بالفعل في لغة البرمجة‪ُ ،‬‬ ‫ويطلﻖ عليها الكلمات المحجوزة مثل‪:‬‬ ‫‪True‬‬ ‫‪False‬‬ ‫‪None‬‬ ‫‪and‬‬ ‫‪not‬‬ ‫‪import‬‬ ‫‪else‬‬ ‫‪global‬‬ ‫‪break‬‬ ‫‪print‬‬ ‫‪return‬‬ ‫‪while‬‬ ‫‪107‬‬ ‫المﺘﻐﻴرات الﻨصية‬ ‫ً‬ ‫ً‬ ‫كما ذكر سابقا؛ ال يقتصر استخدام المتغيرات على تخ�ين األرقام فقط‪ ،‬بل يمكن استخدامها لتخ�ين النصوص أيضا‪ .‬المتغيرات التي تخزن‬ ‫النص تسمى متغيرات من نوع ‪ .String‬ولتحويل النص إلى متغير معين كل ما عليك فعله هو وضع النص داخل عالمتي تنصيص " "‪.‬‬ ‫"محمد"=‪name‬‬ ‫)‪print (name‬‬ ‫محمد‬ ‫يجب استخدام الفواصل إذا أردت إضافة الم�يد من العبارات و�ذا كنت ترﻏب في جعل المعلومات التي تعرضها واضحة وقابلة‬ ‫لالستخدام بشكل أكبر‪ ،‬فأنت بحاجة إلى تغيير التعليمات البرمجية كالتالي‪:‬‬ ‫"محمد"=‪name‬‬ ‫)‪",name‬اسمي‪print (":‬‬ ‫هل يمكنك مالحظة االختالف؟‬ ‫هكذا أفضل بال شك‪.‬‬ ‫اسمي‪ :‬محمد‬ ‫الﺘعليقات‬ ‫ُ‬ ‫ُ‬ ‫تستخدم التعليقات إلضافة تلميحات حول التعليمات البرمجية وال تعد من خطوات البرنامج‪ .‬قد تحتاج إلى مراجعة التعليقات في‬ ‫المستقبل إذا رﻏبت ب�جراء أي تغييرات على برنامجك‪ .‬يمكنك إضافة ماتريده من تعليقات باستخدام عالمة (‪ )#‬في بداية العبارة‪،‬‬ ‫وسيتجاهله الحاسب‪.‬‬ ‫‪#....‬‬ ‫ّ‬ ‫عين قيمة السم المتغير‪#‬‬ ‫"محمد"=‪name‬‬ ‫أطبع قيمة المتغير‪#‬‬ ‫)‪", name‬اسمي‪print(":‬‬ ‫هذه عبارة عن تعليقات‬ ‫ال ينفذها الحاسب‬ ‫اسمي‪ :‬محمد‬ ‫‪108‬‬ ‫معلومة‬ ‫يجب عليك كتابة النص ً‬ ‫دائما بين عالمتي تنصيص " " عند استخدام المتغيرات النصية‪.‬‬ ‫مثال تطبيقي‪ :‬لعبة السباق الثاﺛي‪.‬‬ ‫لتطبﻖ ما تعلمته في لعبة السباق الثالثي‪.‬‬ ‫)"لعبة السباق الثالثي"(‪print‬‬ ‫‪SwimmingScore=70‬‬ ‫‪CyclingScore=40‬‬ ‫‪RunningScore=60‬‬ ‫احسب نتيجة الرياضي في لعبة السباق الثالثي‪#‬‬ ‫‪TriathlonScore=SwimmingScore+CyclingScore+RunningScore‬‬ ‫)"لعبة السباق الثالثي"(‪print‬‬ ‫)"مجموع نقاط لعبة السباق الثالثي‪print(TriathlonScore,":‬‬ ‫لعبة السباق الثالثي‬ ‫مجموع نقاط لعبة السباق الثالثي‪170 :‬‬ ‫الثوابﺖ‬ ‫ً‬ ‫قيمة ثابتة أثناء البرمجة‪ ،‬ولتحقيﻖ ذلك يمكنك استخدام المتغيرات الثابتة‪ .‬على س�يل المثال‪ :‬إذا كنت‬ ‫قد تحتاج أحيانا إلى متغير ذي‬ ‫ٍ‬ ‫ً‬ ‫تريد حساب مساحة الدائرة فإن برنامجك يحتاج إلى استخدام قيمة باي والتي تساوي ‪ ،3.14‬وبالنظر إلى أن القيمة ال تتغير أبدا فيمكن‬ ‫تخ�ينها بصورة ثابتة باسم باي (‪.)pi‬‬ ‫عادة ما يتم تخ�ين الثوابت في ملف مختلف عن البرنامج الرئيس ويجب عليك استيرادها الستخدامها‪.‬‬ ‫استخدم‬ ‫السطر للوصول‬ ‫إلى الدوال‬ ‫الرياضية‪.‬‬ ‫‪from math import pi‬‬ ‫)"قيمة باي‪print(pi,":‬‬ ‫قيمة باي‪3.141592653589793 :‬‬ ‫‪109‬‬ ‫لﻨطبﻖ ً‬ ‫معا‬ ‫تدريﺐ ‪1‬‬ ‫اخﺘر اإلجابة الصحيحة‪:‬‬ ‫)"اكتب رقمين"( ‪input‬‬ ‫‪ .1‬األمر الذي تريد كتابته لعرض رسالة‬ ‫على الشاشة تطلب من المستخدم‬ ‫كتابة رقمين‪:‬‬ ‫)"اكتب رقمين"( ‪print‬‬ ‫اكتب رقمين‬ ‫)‪print (Num1, Num2‬‬ ‫‪ .2‬األمر الذي يجب عليك كتابته لعرض‬ ‫قيم المتغيرات ‪ Num1‬و‪:Num2‬‬ ‫)"الرقم ‪ , 2‬الرقم ‪print ("1‬‬ ‫)‪print (N1, N2‬‬ ‫‪110‬‬ ‫تدريﺐ ‪2‬‬ ‫ً‬ ‫ً‬ ‫برمجيا إلضافة درجﺘﻚ في ال�ياضيات في المﺘﻐﻴر ‪ ،myGrade‬ﺛﻢ اﻃبع درجﺘﻚ‬ ‫مقطعا‬ ‫ا�ﺘﺐ‬ ‫على الشاشة‪.‬‬ ‫المقطع البرمجي‬ ‫تدريﺐ ‪3‬‬ ‫ا�ﺘﺐ ﻧاتج المقطع البرمجي الﺘالي‪:‬‬ ‫‪x=20‬‬ ‫‪y=30‬‬ ‫‪Total=x+y‬‬ ‫)"مجموع ‪ x‬و ‪� y‬ساوي‪print(Total,":‬‬ ‫الناتج‬ ‫‪111‬‬ ‫ش‬ ‫م�وع الوحدة‬ ‫في هذا المشروع ستتعامل مع لغة برمجة البايثون لحساب‬ ‫مساحة الدائرة‪ ،‬وذلك باتباع ما يلي‪:‬‬ ‫‪1‬‬ ‫افهم المشكلة وحدد مدخالتها ومخرجاتها والخطوات‬ ‫المطلوبة‪ ،‬واكتب الخطوات الخوارزمية الخاصة بها‪.‬‬ ‫‪2‬‬ ‫ً‬ ‫ً‬ ‫بناء على الخوارزمية‪ ،‬ارسم مخططا‬ ‫ً‬ ‫انسيابيا للخوارزمية‪.‬‬ ‫‪3‬‬ ‫ً‬ ‫مستعدا ّ‬ ‫حول المخطط‬ ‫عندما تكون‬ ‫االنسيابي إلى برنامج باستخدام لغة‬ ‫برمجة البايثون‪.‬‬ ‫‪R‬‬ ‫‪1‬‬ ‫اضبط نصف قطر الدائرة ‪ R‬ليكون ‪.7‬‬ ‫‪2‬‬ ‫استخدم المعادلة التالية لحساب‬ ‫مساحة الدائرة‪A=pi*R**2 :‬‬ ‫‪ A‬هي مساحة الدائرة‪.‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪112‬‬ ‫اطبع النتيجة‪.‬‬ ‫ّ‬ ‫شغل البرنامج وتحقﻖ من صحته‬ ‫وعدم وجود أخطاء‪.‬‬ ‫ن‬ ‫ي� الخﺘام‬ ‫جدول المهارات‬ ‫درجة اإلتقان‬ ‫المهارة‬ ‫أتقن‬ ‫لم يتقن‬ ‫‪ .1‬فهم المشكلة وتحديد مدخالتها ومخرجاتها‪.‬‬ ‫‪ .2‬كتابة خوارزمية لمشكلة محددة‪.‬‬ ‫‪ .3‬رسم مخطط انسيابي لخوارزمية‪.‬‬ ‫‪ .4‬التمييز بين المتغيرات في لغة البايثون‪.‬‬ ‫‪ .5‬إنشاء برنامج في بايثون‪.‬‬ ‫المصطلحات‬ ‫‪Algorithm‬‬ ‫ُم َ‬ ‫خ�ج‬ ‫‪Output‬‬ ‫‪Code‬‬ ‫مشكلة‬ ‫‪Problem‬‬ ‫تعلﻴﻖ‬ ‫‪Comment‬‬ ‫برﻧامج‬ ‫‪Program‬‬ ‫ﺛابﺖ‬ ‫‪Constant‬‬ ‫خوارزمية‬ ‫مقطع برمجي‬ ‫مخطﻂ انسيابي‬ ‫دالة‬ ‫لﻐة برمجة‬ ‫‪Programming‬‬ ‫‪language‬‬ ‫‪Flowchart‬‬ ‫حفﻆ‬ ‫‪Save‬‬ ‫‪Function‬‬ ‫مﺘﻐﻴر‬ ‫‪Variable‬‬ ‫‪113‬‬

Use Quizgecko on...
Browser
Browser