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

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

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

الدرس: تدريب 2

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

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

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

نوع المحتوى: تمارين وأسئلة

📝 ملخص الصفحة

📝 صفحة تمارين وأسئلة

هذه الصفحة تحتوي على أسئلة مرقمة للواجبات والتقييم.

راجع تبويب الواجبات للإجابات الكاملة على أسئلة الصفحة.

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

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

تدريب 2

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

تدريب 2

2

نوع: QUESTION_HOMEWORK

ما وظيفة المقطع البرمجي التالي؟ وما مخرجاته؟

الناتج

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

الناتج

تدريب 3

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

تدريب 3

3

نوع: QUESTION_HOMEWORK

اكتب مقطعًا برمجيًا باستخدام مكتبة أوبن بيكسل (openpyxl)، يعمل على تحميل مجموعة بيانات ملف التغذية و طباعة قيم عناوين الأعمدة.

تدريب 4

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

تدريب 4

4

نوع: QUESTION_HOMEWORK

اكتب مقطعًا برمجيًا باستخدام مكتبة أوبن بيكسل (openpyxl)، يعمل على تحميل مجموعة بيانات ملف التغذية و طباعة جميع القيم الغذائية الأصغر من 25.

نوع: METADATA

وزارة التعليم Ministry of Education 2023 - 1447

نوع: METADATA

182

🔍 عناصر مرئية

A Python code snippet using the openpyxl library. It imports openpyxl, loads a workbook named 'nutrition.xlsx', and selects the sheet named 'arabic'. It then iterates through rows from 3 to 12 (exclusive of 13). Inside the loop, it reads the value from column 5 of the current row, converts it to a float, and stores it in the 'value' variable. If 'value' is less than 2, it prints the value from column 1 of the same row.

An empty rectangular box labeled 'الناتج' (Output), intended for the user to write the expected output of the Python code snippet from Exercise 2.

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

--- SECTION: تدريب 2 --- تدريب 2 --- SECTION: 2 --- ما وظيفة المقطع البرمجي التالي؟ وما مخرجاته؟ --- SECTION: الناتج --- الناتج --- SECTION: تدريب 3 --- تدريب 3 --- SECTION: 3 --- اكتب مقطعًا برمجيًا باستخدام مكتبة أوبن بيكسل (openpyxl)، يعمل على تحميل مجموعة بيانات ملف التغذية و طباعة قيم عناوين الأعمدة. --- SECTION: تدريب 4 --- تدريب 4 --- SECTION: 4 --- اكتب مقطعًا برمجيًا باستخدام مكتبة أوبن بيكسل (openpyxl)، يعمل على تحميل مجموعة بيانات ملف التغذية و طباعة جميع القيم الغذائية الأصغر من 25. وزارة التعليم Ministry of Education 2023 - 1447 182 --- VISUAL CONTEXT --- **FIGURE**: Untitled Description: A Python code snippet using the openpyxl library. It imports openpyxl, loads a workbook named 'nutrition.xlsx', and selects the sheet named 'arabic'. It then iterates through rows from 3 to 12 (exclusive of 13). Inside the loop, it reads the value from column 5 of the current row, converts it to a float, and stores it in the 'value' variable. If 'value' is less than 2, it prints the value from column 1 of the same row. Context: This code demonstrates how to read data from an Excel file using Python's openpyxl library, iterate through rows, apply a conditional check on a specific column's value, and print data from another column based on that condition. **FIGURE**: Untitled Description: An empty rectangular box labeled 'الناتج' (Output), intended for the user to write the expected output of the Python code snippet from Exercise 2. Context: This box serves as a placeholder for the solution to Exercise 2, where students are expected to determine and write the output of the provided Python code.

✅ حلول أسئلة الكتاب الرسمية

عدد الأسئلة: 3

سؤال 2: ما وظيفة المقطع البرمجي التالي؟ وما مخرجاته؟ import openpyxl wb = openpyxl.load_workbook(filename="nutrition.xlsx") sheet_obj = wb["arabic"] for row in range (3,13): value = float(sheet_obj.cell(row=row, column=5).value) if (value < 2): print(sheet_obj.cell(row=row, column=1).value)

الإجابة: س2: يقوم بتحميل ملف nutrition.xlsx واختيار ورقة arabic، ثم يمر على الصفوف من 3 إلى 12 ويقرأ قيمة العمود 5 في كل صف، فإذا كانت قيمة العمود 5 < 2 يطبع قيمة العمود 1. المخرجات: طباعة قيم العمود 1 للصفوف التي تحقق الشرط (قيمة العمود 5 < 2) ضمن الصفوف 3-12.

خطوات الحل:

  1. | المعطيات | المطلوب | |-----------|----------| | ملف Excel اسمه `nutrition.xlsx` | وظيفة المقطع البرمجي ومخرجاته | | ورقة عمل باسم `arabic` داخل الملف | | | كود Python يستخدم مكتبة `openpyxl` | |
  2. **المبدأ المستخدم:** قراءة ومعالجة بيانات Excel باستخدام مكتبة `openpyxl` في Python.
  3. 1. **تحميل ملف Excel:** - `import openpyxl` لاستيراد المكتبة. - `wb = openpyxl.load_workbook(filename="nutrition.xlsx")` لتحميل الملف. - `sheet_obj = wb["arabic"]` للوصول إلى ورقة العمل `arabic`.
  4. 2. **التكرار على الصفوف:** - `for row in range (3,13):` يتكرر على الصفوف من 3 إلى 12 (حيث `range(3,13)` يشمل 3 ويستثني 13).
  5. 3. **قراءة القيم وفحص الشرط:** - `value = float(sheet_obj.cell(row=row, column=5).value)` يقرأ قيمة العمود 5 للصف الحالي ويحولها إلى رقم عشري. - `if (value < 2):` يتحقق إذا كانت القيمة أقل من 2.
  6. 4. **طباعة المخرجات:** - `print(sheet_obj.cell(row=row, column=1).value)` يطبع قيمة العمود 1 للصف الحالي إذا تحقق الشرط.
  7. > **ملاحظة:** يبدأ التكرار من الصف 3، مما يشير إلى أن الصفوف 1 و2 قد تحتوي على عناوين أو رؤوس.
  8. **الوظيفة:** يقوم المقطع البرمجي بتحميل ملف `nutrition.xlsx`، واختيار ورقة `arabic`، ثم يفحص الصفوف من 3 إلى 12. لكل صف، يقرأ قيمة العمود 5، وإذا كانت أقل من 2، يطبع قيمة العمود 1 لذلك الصف. **المخرجات:** قيم العمود 1 للصفوف (من 3 إلى 12) التي يكون فيها العمود 5 أقل من 2.

سؤال 3: اكتب مقطعًا برمجيًا باستخدام مكتبة أوبين بيكسل (openpyxl)، يعمل على تحميل مجموعة بيانات ملف التغذية و طباعة قيم عناوين الأعمدة.

الإجابة: import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for col in range(1, sheet_obj.max_column + 1): print(sheet_obj.cell(row = 2, column=col).value)

خطوات الحل:

  1. | المعطيات | المطلوب | |-----------|----------| | ملف Excel اسمه `nutrition.xlsx` | كتابة مقطع برمجي لطباعة عناوين الأعمدة | | ورقة عمل باسم `arabic` داخل الملف | | | استخدام مكتبة `openpyxl` | |
  2. **المبدأ المستخدم:** قراءة بيانات Excel واستخراج عناوين الأعمدة باستخدام `openpyxl`.
  3. 1. **استيراد المكتبة وتحميل الملف:** - `import openpyxl` لاستيراد مكتبة `openpyxl`. - `wb = openpyxl.load_workbook("nutrition.xlsx")` لتحميل ملف Excel.
  4. 2. **الوصول إلى ورقة العمل:** - `sheet_obj = wb['arabic']` لتحديد ورقة العمل `arabic`.
  5. 3. **التكرار على الأعمدة:** - `for col in range(1, sheet_obj.max_column + 1):` يتكرر على جميع الأعمدة من العمود 1 إلى آخر عمود في الورقة. - `sheet_obj.max_column` يعطي عدد الأعمدة في الورقة.
  6. 4. **قراءة وطباعة العناوين:** - `print(sheet_obj.cell(row = 2, column=col).value)` يقرأ قيمة الخلية في الصف 2 والعمود الحالي (يفترض أن العناوين في الصف 2) ويطبعها.
  7. > **افتراض:** عناوين الأعمدة موجودة في الصف 2 من ورقة العمل.
  8. **المقطع البرمجي النهائي:** python import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for col in range(1, sheet_obj.max_column + 1): print(sheet_obj.cell(row = 2, column=col).value) **الوظيفة:** يحمل الملف `nutrition.xlsx`، يصل إلى ورقة `arabic`، ثم يطبع جميع عناوين الأعمدة الموجودة في الصف 2.

سؤال 4: اكتب مقطعًا برمجيًا باستخدام مكتبة أوبين بيكسل (openpyxl)، يعمل على تحميل مجموعة بيانات ملف التغذية و طباعة جميع القيم الغذائية الأصغر من 25.

الإجابة: import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for r in range(3, sheet_obj.max_row + 1): for c in range(2, sheet_obj.max_column + 1): v = sheet_obj.cell(row=r, column=c).value if v and float(v) < 25: print(v)

خطوات الحل:

  1. | المعطيات | المطلوب | |-----------|----------| | ملف Excel اسمه `nutrition.xlsx` | كتابة مقطع برمجي لطباعة القيم الغذائية الأصغر من 25 | | ورقة عمل باسم `arabic` داخل الملف | | | استخدام مكتبة `openpyxl` | | | القيم الغذائية تبدأ من الصف 3 والعمود 2 | |
  2. **المبدأ المستخدم:** قراءة ومعالجة بيانات Excel باستخدام `openpyxl` مع شروط مقارنة.
  3. 1. **استيراد المكتبة وتحميل الملف:** - `import openpyxl` لاستيراد مكتبة `openpyxl`. - `wb = openpyxl.load_workbook("nutrition.xlsx")` لتحميل ملف Excel.
  4. 2. **الوصول إلى ورقة العمل:** - `sheet_obj = wb['arabic']` لتحديد ورقة العمل `arabic`.
  5. 3. **التكرار على الصفوف والأعمدة:** - `for r in range(3, sheet_obj.max_row + 1):` يتكرر على الصفوف من 3 إلى آخر صف (حيث تبدأ البيانات من الصف 3). - `for c in range(2, sheet_obj.max_column + 1):` يتكرر على الأعمدة من 2 إلى آخر عمود (حيث تبدأ القيم الغذائية من العمود 2).
  6. 4. **قراءة القيم وفحص الشرط:** - `v = sheet_obj.cell(row=r, column=c).value` يقرأ قيمة الخلية الحالية. - `if v and float(v) < 25:` يتحقق أولاً أن القيمة ليست `None`، ثم يحولها إلى رقم عشري ويقارنها بـ 25.
  7. 5. **طباعة القيم المؤهلة:** - `print(v)` يطبع القيمة إذا كانت أقل من 25.
  8. > **ملاحظة:** استخدام `if v` يضمن عدم حدوث أخطاء إذا كانت الخلية فارغة.
  9. **المقطع البرمجي النهائي:** python import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for r in range(3, sheet_obj.max_row + 1): for c in range(2, sheet_obj.max_column + 1): v = sheet_obj.cell(row=r, column=c).value if v and float(v) < 25: print(v) **الوظيفة:** يحمل الملف `nutrition.xlsx`، يصل إلى ورقة `arabic`، ثم يطبع جميع القيم الغذائية (من الصف 3 والعمود 2 فصاعدًا) التي تكون أقل من 25.

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

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

ما وظيفة المقطع البرمجي التالي؟ وما مخرجاته؟ import openpyxl wb = openpyxl.load_workbook(filename="nutrition.xlsx") sheet_obj = wb["arabic"] for row in range (3,13): value = float(sheet_obj.cell(row=row, column=5).value) if (value < 2): print(sheet_obj.cell(row=row, column=1).value)

  • أ) يحسب متوسط قيم العمود 5 في ملف Excel ويطبع النتيجة.
  • ب) يقوم بتحميل ملف nutrition.xlsx واختيار ورقة arabic، ثم يمر على الصفوف من 3 إلى 12 ويقرأ قيمة العمود 5 في كل صف، فإذا كانت قيمة العمود 5 < 2 يطبع قيمة العمود 1. المخرجات: طباعة قيم العمود 1 للصفوف التي تحقق الشرط (قيمة العمود 5 < 2) ضمن الصفوف 3-12.
  • ج) يضيف قيماً جديدة إلى العمود 1 في ملف Excel بناءً على قيم العمود 5.
  • د) يحذف جميع الصفوف من ملف Excel التي تكون فيها قيمة العمود 5 أكبر من أو تساوي 2.

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

الإجابة: يقوم بتحميل ملف nutrition.xlsx واختيار ورقة arabic، ثم يمر على الصفوف من 3 إلى 12 ويقرأ قيمة العمود 5 في كل صف، فإذا كانت قيمة العمود 5 < 2 يطبع قيمة العمود 1. المخرجات: طباعة قيم العمود 1 للصفوف التي تحقق الشرط (قيمة العمود 5 < 2) ضمن الصفوف 3-12.

الشرح: ١. يستورد المكتبة openpyxl لمعالجة ملفات Excel. ٢. يحمل الملف nutrition.xlsx ويختار ورقة العمل المسماة 'arabic'. ٣. يدخل حلقة تكرارية تمر على الصفوف من 3 إلى 12. ٤. في كل تكرار، يقرأ قيمة العمود 5 (column=5) للصف الحالي ويحولها إلى رقم عشري. ٥. يفحص إذا كانت القيمة أقل من 2. ٦. إذا تحقق الشرط، يطبع قيمة العمود 1 (column=1) لنفس الصف. ٧. الوظيفة: فلترة البيانات وطباعة أسماء العناصر (من العمود 1) التي يكون فيها العمود 5 أقل من 2.

تلميح: ركز على وظيفة الحلقة (for) والشرط (if) داخل الكود.

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

اكتب مقطعًا برمجيًا باستخدام مكتبة أوبن بيكسل (openpyxl)، يعمل على تحميل مجموعة بيانات ملف التغذية و طباعة قيم عناوين الأعمدة.

  • أ) import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for col in range(1, sheet_obj.max_column + 1): print(sheet_obj.cell(row = 2, column=col).value)
  • ب) import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for row in range(1, sheet_obj.max_row + 1): print(sheet_obj.cell(row=row, column=1).value)
  • ج) import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] print(sheet_obj['A2'].value)
  • د) import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for col in range(1, 6): print(sheet_obj.cell(row = 1, column=col).value)

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

الإجابة: import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for col in range(1, sheet_obj.max_column + 1): print(sheet_obj.cell(row = 2, column=col).value)

الشرح: ١. استيراد مكتبة openpyxl. ٢. تحميل ملف Excel المسمى 'nutrition.xlsx'. ٣. تحديد ورقة العمل المسماة 'arabic'. ٤. استخدام حلقة for للتكرار على جميع أعمدة الورقة، من العمود 1 إلى آخر عمود (sheet_obj.max_column). ٥. في كل تكرار، قراءة قيمة الخلية الموجودة في الصف 2 والعمود الحالي (col) وطباعتها. يُفترض أن عناوين الأعمدة مخزنة في الصف 2.

تلميح: تذكر أن عناوين الأعمدة عادةً ما تكون في الصف الأول أو الثاني من جدول البيانات.

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

اكتب مقطعًا برمجيًا باستخدام مكتبة أوبن بيكسل (openpyxl)، يعمل على تحميل مجموعة بيانات ملف التغذية و طباعة جميع القيم الغذائية الأصغر من 25.

  • أ) import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for r in range(3, sheet_obj.max_row + 1): for c in range(2, sheet_obj.max_column + 1): v = sheet_obj.cell(row=r, column=c).value if v and float(v) < 25: print(v)
  • ب) import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for r in range(1, sheet_obj.max_row + 1): v = sheet_obj.cell(row=r, column=5).value if v < 25: print(v)
  • ج) import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for cell in sheet_obj['B']: if cell.value < 25: print(cell.value)
  • د) import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for r in range(3, 10): for c in range(2, 6): if sheet_obj.cell(row=r, column=c).value < 25: print(sheet_obj.cell(row=r, column=c).value)

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

الإجابة: import openpyxl wb = openpyxl.load_workbook("nutrition.xlsx") sheet_obj = wb['arabic'] for r in range(3, sheet_obj.max_row + 1): for c in range(2, sheet_obj.max_column + 1): v = sheet_obj.cell(row=r, column=c).value if v and float(v) < 25: print(v)

الشرح: ١. استيراد مكتبة openpyxl وتحميل ملف 'nutrition.xlsx' والوصول إلى ورقة 'arabic'. ٢. استخدام حلقة for خارجية للتكرار على الصفوف من 3 إلى آخر صف (max_row)، لأن البيانات تبدأ من الصف 3. ٣. استخدام حلقة for داخلية للتكرار على الأعمدة من 2 إلى آخر عمود (max_column)، لأن القيم الغذائية تبدأ من العمود 2. ٤. في كل خلية، قراءة القيمة وتخزينها في المتغير v. ٥. التحقق أولاً من أن v ليست None (فارغة)، ثم تحويلها إلى رقم عشري ومقارنتها بـ 25. ٦. إذا كانت القيمة أقل من 25، يتم طباعتها.

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

التصنيف: مسألة تدريبية | المستوى: صعب