المتغيرات العامة - كتاب المهارات الرقمية - الصف 10 - الفصل 1 - المملكة العربية السعودية

الكتاب: كتاب المهارات الرقمية - الصف 10 - الفصل 1 | المادة: المهارات الرقمية | المرحلة: الصف 10 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

الدرس: المتغيرات العامة

📚 معلومات الصفحة

الكتاب: كتاب المهارات الرقمية - الصف 10 - الفصل 1 | المادة: المهارات الرقمية | المرحلة: الصف 10 | الفصل الدراسي: 1

الدولة: المملكة العربية السعودية | المنهج: المنهج السعودي - وزارة التعليم

📝 ملخص الصفحة

ملخص الدرس: المتغيرات المحلية والعامة

يتم تصنيف المتغيرات في البرمجة إلى نوعين رئيسيين بناءً على نطاقها (Scope)، وهو الجزء من المقطع البرمجي الذي يمكن من خلاله الوصول إلى المتغير واستخدامه:

  • المتغيرات المحلية (Local Variables): يتم تعريف هذه المتغيرات داخل دالة (function) معينة. تنتمي هذه المتغيرات فقط إلى الدالة التي عُرفت داخلها، ولا يمكن الوصول إليها أو استخدامها من خارج تلك الدالة.
  • المتغيرات العامة (Global Variables): يتم تعريف هذه المتغيرات خارج أي دالة. يمكن الوصول إلى هذه المتغيرات من أي مكان في المقطع البرمجي بأكمله، بما في ذلك من داخل جميع الدوال.
  • مثال تطبيقي:

    أنشئ مقطعًا برمجيًا بحيث تزيد قيمة المتغير `myVar` بمقدار 1 في كل مرة تضغط على زر A في لوحة المايكروبت. لضمان أن التغيير على المتغير داخل الدالة يؤثر على قيمته في البرنامج كله، يجب تعريف المتغير كمتغير عام باستخدام الأمر `global`.

    المقطع البرمجي المقترح:

    ```

    myVar = 0

    def on_button_pressed_a():

    global myVar

    myVar += 1

    basic.show_number(myVar)

    input.on_button_pressed(Button.A, on_button_pressed_a)

    ```

    شرح المقطع:

    * `myVar = 0`: تعريف المتغير العام `myVar` وتعيين قيمته الأولية إلى 0.

    * `def on_button_pressed_a():`: تعريف دالة تُنفَّذ عند الضغط على الزر A.

    * `global myVar`: الإعلان داخل الدالة أن `myVar` هو المتغير العام المذكور سابقًا، مما يسمح بتعديل قيمته.

    * `myVar += 1`: زيادة قيمة المتغير `myVar` بمقدار 1.

    * `basic.show_number(myVar)`: عرض القيمة الجديدة للمتغير على شاشة المايكروبت.

    * `input.on_button_pressed(Button.A, on_button_pressed_a)`: ربط حدث الضغط على الزر A باستدعاء الدالة المحددة.

    📋 المحتوى المنظم

    📖 محتوى تعليمي مفصّل

    نوع: محتوى تعليمي

    المتغيرات المحلية والمتغيرات العامة

    نوع: محتوى تعليمي

    يتم تصنيف المتغيرات إلى متغيرات محلية ومتغيرات عامة بناءً على كيفية الوصول إلى المتغير ورؤيته واستخدامه.

    المتغيرات العامة

    نوع: محتوى تعليمي

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

    نوع: محتوى تعليمي

    نطاق المتغير العام

    المتغيرات المحلية

    نوع: محتوى تعليمي

    يتم تعريف المتغيرات المحلية داخل دالة فقط، ولذا تنتمي فقط إلى هذه الدالة المحددة، ولا يمكن الوصول إليها إلا من خلال تلك الدالة التي تم تعريفها داخلها.

    نوع: محتوى تعليمي

    نطاق المتغير المحلي

    نوع: محتوى تعليمي

    أنشئ مقطعًا برمجيًا بحيث تتغير قيمة المتغير myVar بمقدار 1 في كل مرة تضغط فيها على زر A من المايكروبوت. ستستخدم الأمر العام (global) للدلالة على أن myVar هو متغير عام، مما يعني أن تعيين قيمة myVar داخل الدالة يغير ما سيعرض في المقطع البرمجي. أنشئ المقطع البرمجي التالي:

    نوع: محتوى تعليمي

    يمكن الوصول للمتغيرات العامة في المقطع البرمجي من جميع الدوال.

    نوع: محتوى تعليمي

    عرف المتغير قبل استخدامه

    🔍 عناصر مرئية

    A code block illustrating variable scope. It shows 'variable' at the top, then 'def name():' followed by 'global variable' and 'command', and finally 'close.def()'. A callout points to 'global variable' with the text 'نطاق المتغير العام'.

    A Python code snippet displayed in a yellow-highlighted block, likely from a programming environment like MakeCode. It includes line numbers and code. Line 1: 'myVar = 0'. Line 3: 'def on_button_pressed_a():'. Line 4: 'global myVar'. Line 5: 'myVar += 1'. Line 6: 'basic.show_number(myVar)'. Line 7: 'input.on_button_pressed(Button.A, on_button_pressed_a)'. A callout points to 'global myVar' with the text 'نطاق المتغير المحلي'.

    📄 النص الكامل للصفحة

    المتغيرات المحلية والمتغيرات العامة يتم تصنيف المتغيرات إلى متغيرات محلية ومتغيرات عامة بناءً على كيفية الوصول إلى المتغير ورؤيته واستخدامه. --- SECTION: المتغيرات العامة --- يتم تعريف المتغيرات العامة خارج أي دالة ويمكن الوصول إليها بشكل عام في المقطع البرمجي بأكمله، ويمكنني آخر يمكن استخدامها في أي مكان في المقطع البرمجي وليس فقط في النطاق الذي تم تحديده، كداخل الدالة على سبيل المثال. نطاق المتغير العام --- SECTION: المتغيرات المحلية --- يتم تعريف المتغيرات المحلية داخل دالة فقط، ولذا تنتمي فقط إلى هذه الدالة المحددة، ولا يمكن الوصول إليها إلا من خلال تلك الدالة التي تم تعريفها داخلها. نطاق المتغير المحلي أنشئ مقطعًا برمجيًا بحيث تتغير قيمة المتغير myVar بمقدار 1 في كل مرة تضغط فيها على زر A من المايكروبوت. ستستخدم الأمر العام (global) للدلالة على أن myVar هو متغير عام، مما يعني أن تعيين قيمة myVar داخل الدالة يغير ما سيعرض في المقطع البرمجي. أنشئ المقطع البرمجي التالي: يمكن الوصول للمتغيرات العامة في المقطع البرمجي من جميع الدوال. عرف المتغير قبل استخدامه --- VISUAL CONTEXT --- **DIAGRAM**: Untitled Description: A code block illustrating variable scope. It shows 'variable' at the top, then 'def name():' followed by 'global variable' and 'command', and finally 'close.def()'. A callout points to 'global variable' with the text 'نطاق المتغير العام'. Context: Illustrates the concept of global variables and their scope. **DIAGRAM**: Untitled Description: A Python code snippet displayed in a yellow-highlighted block, likely from a programming environment like MakeCode. It includes line numbers and code. Line 1: 'myVar = 0'. Line 3: 'def on_button_pressed_a():'. Line 4: 'global myVar'. Line 5: 'myVar += 1'. Line 6: 'basic.show_number(myVar)'. Line 7: 'input.on_button_pressed(Button.A, on_button_pressed_a)'. A callout points to 'global myVar' with the text 'نطاق المتغير المحلي'. Context: Demonstrates a Python function that modifies a global variable, illustrating local scope within the function.

    🎴 بطاقات تعليمية للمراجعة

    عدد البطاقات: 4 بطاقة لهذه الصفحة

    ما هو الفرق الرئيسي بين المتغير العام والمتغير المحلي من حيث النطاق؟

    • أ) المتغير العام يُعرّف داخل دالة، والمتغير المحلي يُعرّف خارج الدوال.
    • ب) المتغير العام يمكن الوصول إليه من أي مكان في المقطع البرمجي، بينما المتغير المحلي يمكن الوصول إليه فقط من داخل الدالة التي عُرف فيها.
    • ج) المتغير المحلي يمكن الوصول إليه من أي مكان، والمتغير العام يقتصر على دالة واحدة.
    • د) لا فرق بينهما، كلاهما له نفس النطاق.

    الإجابة الصحيحة: b

    الإجابة: المتغير العام يمكن الوصول إليه من أي مكان في المقطع البرمجي، بينما المتغير المحلي يمكن الوصول إليه فقط من داخل الدالة التي عُرف فيها.

    الشرح: 1. المتغير العام يُعرّف خارج أي دالة. 2. نطاقه يشمل المقطع البرمجي بأكمله. 3. المتغير المحلي يُعرّف داخل دالة محددة. 4. نطاقه يقتصر على تلك الدالة فقط.

    تلميح: فكر في مكان تعريف المتغير وأين يمكن استخدام قيمته.

    التصنيف: فرق بين مفهومين | المستوى: سهل

    أي مما يلي يصف بشكل صحيح نطاق المتغير العام؟

    • أ) يمكن الوصول إليه من جميع الدوال وأي مكان في المقطع البرمجي.
    • ب) يمكن الوصول إليه فقط من داخل الدالة التي عُرف فيها.
    • ج) يمكن الوصول إليه فقط من خارج الدوال، ولا يمكن للدوال استخدامه.
    • د) نطاقه يقتصر على كتلة شرطية محددة داخل دالة.

    الإجابة الصحيحة: a

    الإجابة: يمكن الوصول إليه من جميع الدوال وأي مكان في المقطع البرمجي.

    الشرح: 1. المتغير العام يُعرّف خارج أي دالة. 2. هذا التعريف يجعله مرئياً ومتاحاً. 3. يمكن لأي جزء من الكود، بما في ذلك جميع الدوال، قراءة قيمته أو تعديلها.

    تلميح: تذكر أن تعريفه يكون خارج الدوال.

    التصنيف: تعريف | المستوى: سهل

    في لغة البرمجة، ما الغرض من استخدام الكلمة المفتاحية 'global' داخل دالة؟

    • أ) لإنشاء متغير محلي جديد داخل الدالة.
    • ب) لحذف متغير عام من الذاكرة.
    • ج) للإشارة إلى أن المتغير الذي سيتم تعديله داخل الدالة هو متغير عام مُعرّف خارجها، وليس متغيراً محلياً جديداً.
    • د) لتحويل متغير محلي إلى متغير عام بعد انتهاء تنفيذ الدالة.

    الإجابة الصحيحة: c

    الإجابة: للإشارة إلى أن المتغير الذي سيتم تعديله داخل الدالة هو متغير عام مُعرّف خارجها، وليس متغيراً محلياً جديداً.

    الشرح: 1. عند تعريف متغير داخل دالة، يصبح متغيراً محلياً افتراضياً. 2. استخدام 'global' يخبر المترجم أن الاسم يشير إلى متغير عام موجود بالفعل. 3. هذا يسمح للدالة بتعديل قيمة المتغير العام بدلاً من إنشاء متغير محلي جديد بنفس الاسم.

    تلميح: تتعلق هذه الكلمة المفتاحية بتعديل متغير موجود مسبقاً من داخل نطاق محلي.

    التصنيف: مفهوم جوهري | المستوى: متوسط

    في المثال البرمجي المذكور (myVar)، ماذا يحدث عند الضغط على زر A؟

    • أ) تقل قيمة المتغير المحلي myVar بمقدار 1 داخل الدالة فقط.
    • ب) تزيد قيمة المتغير العام myVar بمقدار 1، ثم تُعرض قيمته الجديدة.
    • ج) يتم إنشاء متغير محلي جديد اسمه myVar بقيمة 0.
    • د) تظهر رسالة خطأ لأن myVar غير معرّف.

    الإجابة الصحيحة: b

    الإجابة: تزيد قيمة المتغير العام myVar بمقدار 1، ثم تُعرض قيمته الجديدة.

    الشرح: 1. الدالة 'on_button_pressed_a' تُستدعى عند الضغط على الزر. 2. السطر 'global myVar' يربط المتغير داخل الدالة بالمتغير العام المسمى 'myVar'. 3. السطر 'myVar += 1' يزيد قيمة المتغير العام بمقدار 1. 4. السطر 'basic.show_number(myVar)' يعرض القيمة الجديدة.

    تلميح: راجع سطر الكود الذي يحتوي على 'myVar += 1'.

    التصنيف: سؤال اختبار | المستوى: متوسط