داليتي سكول -

Daliaty School

   صفحة البيت  |

 

 

 

 

 

بايثون – ôéúåï – python

 

 

 

 

سؤال1  (سؤال 1، امتحان مفمار، صف سابع، 2022)

 

أعطت المعلمة لتلاميذها المهمة التالية:

"اكتبوا برنامجاً يستقبل عددين صحيحين ويطبعهما بالترتيب، من العدد الصغير إلى العدد الكبير"

 

كتب التلاميذ حلولاً مختلفةً.

أذكر لكل مَقطَع من الأوامر هل يفي بالمتطلبات: نعم أم لا.

إذا كان مَقطَع الأوامر لا  يَفي بالمتطَلبات، يَجب  ذكر السبب.

يمكن الإفتراض أن ببداية كل برنامج  كتبوا السطرين التاليين:

 

num1 = int (input('Enter an integer number'))

num2 = int (input('Enter an integer number'))

 

 

 

بخصوص العامود الثاني: هل مَقطع  سلسلَة الأوامر يفي  بالمُتطلبات؟ نعم/لا

 

التفَسير

نعم/لا

سلسلَة الأوامر بلغُة python

قسم

لم يتم إجراء فحص   مقارنة للقيم، فقط تم  تحديد متغيرات

min، max

   لا    

min = num1

max = num2

print(num1, num2)

ا

 

  نعم   

if num1 < num2:

  print(num1, num2)

else:

  print(num2, num1)

ب

 

  نعم   

if num1 > num2:

  num1 = num1 + num2

  num2 = num1 - num2

  num1 = num1 - num2

print(num1, num2)

ج

 

  نعم   

if num1 < num2:

  min = num1

  max = num2

else:

  min = num2

  max = num1

print(min, max)

د

num1, num2

تطبع بدون الاعتماد على مقارنة العلاقة بينهم

   لا    

print(num1, num2)

if num2 < num1:

  print(num2, num1)

ه

تضييع قيمة num1

عند التبديل

   لا    

if num1 > num2:

  num1 = num2

  num2 = num1

print(num1, num2)

و

 

  نعم   

if num1 < num2:

  min = num1

else:

  min = num2

print(min, num1+num2-min)

ز

 

 

 

  

 

 

 

سؤال2    (سؤال 2، امتحان مفمار، صف سابع، 2022)

 

 

أمامك جدول يحتوي على أربعة مقاطع برمجية.

لكل مقطع سلْسلَة أوامِر في الجدول، يجب كتابة المُخْرج الذي تم الحُصول عليه في العمود الفارغ.

 

المُخْرَج اّلذي تّم

اّلحُّصول عّليه

سلْسلَة الأوامر بلُغة python

قسم

 

0,3,6,9

for i in range(10):

  if i%3 == 0:

    print(i)

ا

 

0,2,3,4,

6,8,9 

for i in range(10):

  if i%2 == 0 or i%3 == 0:

    print(i)

ب

3,6,9,12,

15,18 

for i in range(3, 20, 3):

  print(i)

ج

30,25,20,

15,10,5

for i in range(30, 0, -5):

  print(i)

د

 

 

  

 

 

 

سؤال3     (سؤال 3، امتحان مفمار، صف سابع، 2022)

 

 

أمامك مَقْطَع من الأَوامر الّذي يَسْتَخدم مكتبة Turtle

 

wn = turtle.Screen()

 

player = turtle.Turtle()

player.penup()

player.setheading(0) # يَتَوجه يَمينا

player.goto(0,0)

player.pendown()

for i in range(4):

  player.forward(50)

  player.left(90)    #1

  player.forward(50)

  player.right(90)   #2

 

turtle.mainloop()

 

 

1. أُرسم على الرسم التخطيطي الذي أمامك الشكْل الذي تم الحُصول عليهِ في نهاية تشغيل البرنامج:

    ملاحظة: كبْر كل مرَبَع صغير 50 * 50

2. ما هي النقطة التي يتواجد فيها player في نهاية تَشغيل البَرنامج ________؟

 

3. قم بتبديل الأ سطُر التي تم التأشير عليها بعلامة # (التي تحتوي على علامة #) مع بعضها البعض.

     أُرسم في الرسم التخطيطي الذي أمامك الشكل الذي سيتم الحُصول عليه في نهاية تشْغيل البرنامج.

     مُلاحظة: اطوال كُل مُربع صغير 50 * 50

 

الحل:

 

2.     (200,200)

 

3.   

  

 

  

 

 

سؤال4    (سؤال 4، امتحان مفمار، صف سابع، 2022)

 

فيما يلي مقْطع أوامر جُزئي يسْتخدِم مكتبة Turtle:

 

wn = turtle.Screen()

player = turtle.Turtle()

player.setheading(0)

 

player.penup()

player.goto(-100, 100)

player.pendown()

size = 200

for i in range( 4 ):

  player.forward(size)

  player.right( 90 )

 

player.penup()

player.goto( -50 , 50 )

player.pendown()

size = 100

for i in range( 4 ):

  player.forward(size)

  player.right( 90 )

 

turtle.mainloop()

 

 

يقوم البرنامج برسم مُربعين داخل بعضهما البعض كما هو مُوضح في الرسم التالي:

 

ملاحظة: اطوال كُل مُربع صغير 50 * 5

 

 

يَجب إكمال المَقاطع الناقصة في البرنامج.

 

 

 

  

 

 

سؤال5      (سؤال 5، امتحان مفمار، صف سابع، 2022)

 

يعمل نور كنادل (جرسون) في مطعم.

نور مُهتم بكتابة برنامج يحسب له المبلغ الذي ربحه خلال المُناوبة (الإكرامية، tip).

في بداية البرنامج، سيتم استقبال عدد الزبائن اللذين منهم تلقى نور إكرامية أثناء المناوبة.

ثم بعد ذلك يتم إستقبال مبلغ الإكرامية الواحد تلو الآخر.

يطبع البرنامج مبلغ الإكراميات التي ربحه نور أثناء المناوبة.

 

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

 

 

sum = 0     

num_of_clients = int(input('أدخل عدد الزبائن '))

 

for i in range( num_of_clients ):

  tip = float(input('أدخل مبلغ الإكرامية '))

  sum = sum + tip

print('مجموع الإكراميات التي ربح تَها أثناء هذه المناوبة ', sum )

 

 

2. يُريد نور أن يضيف إلى البرنامج عملية طباعة مُعدل مبلغ الإكراميات التي تلقاها أثناء المُناوبة.

     في نِهاية البرنامج، يجب إضافة أمر مُناسب لطِباعة مُعدل مبلغ الإكرامِيات.

 

print(' مُعدل مبلغ الإكرامِيات ', sum / num_of_clients)

أو

print(sum / num_of_clients)

 

 

 

  

 

 

 

سؤال6     (سؤال 6، امتحان مفمار، صف سابع، 2022)

 

يلعب أمير وداني في فريق كرة السلة. خلال الموسم هناك 10 مباريات.

يستقبل مقطع الأوامر التالية عدد النقاط التي سجلها أمير وداني في كل لعبة من الألعاب العشر، ويعرضها كمُخْرج:

  بِكم مُباراة سجل أمير نِقاط أكثر من داني.

  بِكم مُباراة سجل داني نِقاط أكثر من أمير.

  بِكم مُباراة سجل كليهما عددًا متساويًا من النقاط.

 

تم تغيير الأسماء بداخل البرنامج (كلمة tie ، التي في الكود، تعني تعادل)

 

amer_count_win = 0

dani_count_win = 0

tie_count = 0

for i in range (  10):

  amer_point = int(input(' عدد النقاط التي أصابها أمير '))

  dani_point = int(input('عدد النقاط التي أصابها داني'))

  if amer_point > dani_point:

    amer_count_win += 1

 

  elif dani_point > amer_point:

 

    dani_count_win += 1

  else:

    tie_count += 1

 

print(' عدد المرات بها حصل سامي على نفاط اكثر ',amer_count_win) print(' عدد المرات بها حصل جود على نفاط اكثر ',dani_count_win) print('عدد المرات بها حصل كلاهما على نفاط متساوية ',tie_count)

 

 

 

 

  

 

 

 

 

 

   

 

 

 

   

 

 

 

Daliaty School – Copywrite  2023

wahbem@gmail.com | https://daliaty.com

 

 

 

 

 

<meta name="viewport" content="width=device-width, initial-scale=1">