image001

صفحة البيت  |                îñ èìôåï 04 – 6046227 | îñ' ô÷ñ 04 – 8303539

 

 

  

 

 

  

 

 

امتحان المفتش المركز (مفمار) – بايثون – صف ثامن 2019

  

 

 

  

 

 

السؤال 1

 

أمامك جدول فيه ثلاثة أكواد بلغة بايثون.

لكلّ كود في الجدول، اكتب ما هو المُخْرَج الذي تحصل عليه في العمود الفارغ.

 

المُخْرَج الناتج

الكود بلغة بايثون

البند رقم

 

num1= 12   num2 =7

num1 = 2

num2 = num1 + 5

num1 = num1 + num2 + 3

print("num1 = ",num1,"num2 = ",num2)

1.

 

num = 13

num = 3

num = 10

num = num + 3

print ("num = ", num)

2.

 

      W      

 

     13    

 

      !    

    

YsW a!!  

 

 We Can   

 

Yes We Can!!!

string = "Yes We Can!!!"

print (string[4])

 

print (len(string)

 

print (string[-3])

 

print (string[::2])

 

print (string[4:-3])

 

print (string[:])

3.

 

 

 

 

 

 

  

 

السؤال 2

أمامك 4 مقاطع كود.

لكلّ واحد من مقاطع الكود التي في الجدول، أَعْطِ مثالً لمُدْخَل يَعرض Yes ومثالً لمُدْخَل يَعرض No.

 

num1 = int(input("Enter first number"))

num2 = int(input("Enter second number"))

if num1 > 5 and num2 <= 4:

  print ("Yes")

else:

  print ("No")

1.

   

مثال لمُدْخَل يَعرض Yes

مثال لمُدْخَل يَعرض No

num1   6     num2   4

num1   4    num2   4

   

 

 

num1 = int(input("Enter first number"))

num2 = int(input("Enter second number"))

if num1 > 5 or num2 <= 4:

  print ("Yes")

else:

  print ("No")

2.

   

مثال لمُدْخَل يَعرض Yes

مثال لمُدْخَل يَعرض No

num1   6    num2   3

num1   5    num2   5

 

(هو الزوج الوحيد)

  

 

 

num1 = int(input("Enter first number"))

num2 = int(input("Enter second number"))

if (num1 > 5 or num2 <= 4) and num1 == num2:

  print ("Yes")

else:

  print ("No")

3.

   

مثال لمُدْخَل يَعرض Yes

مثال لمُدْخَل يَعرض No

num1   6    num2   4

  

أي عددان متساويان أكبر من 5 أو أي عددان متساويان أقل من 4 أو 4

num1   5    num2   4

 

 

 

num1 = int(input("Enter first number"))

num2 = int(input("Enter second number"))

if num1 > 5 or (num2 <= 4 and num1 == num2):

  print ("Yes")

else:

  print ("No")

4.

   

مثال لمُدْخَل يَعرض Yes

مثال لمُدْخَل يَعرض No

num1   4   num2   4  

num1   4   num2   5

 

 

 

 

 

 

 

  

 

السؤال 3

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

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

 

المُخْرَج الناتج

الكود بلغة بايثون

البند رقم

 

1  3  5  7  9

for k in range(10):

  if k % 2 == 0:

    print (k + 1)

1.

 

0  3  6  9

for k in range(20):

  if k % 3 == 0 and k <= 9:

    print (k)

2.

 

3  5  7  9 

for k in range(3, 10, 2):

  print (k)

3.

 

40  30  20  10

for k in range(40, 0, -10):

  print (k)

4.

 

 

 

 

 

  

 

السؤال 4

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

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

المُخْرَج الناتج

الكود بلغة بايثون

البند رقم

 

 1

 2

 3

number = 123

print (number // 100)

print (number // 10 % 10)

print (number % 10)

1.

 

123

 45

number = 12345

print (number // 100)

print (number % 100)

2.

 

12

 4

number = 12345

print (number // 100 // 10)

print (number // 10 % 10)

3.

 

 3

 2

 1

number = 123

while number > 0:

  print (number % 10)

  number = int(number // 10)

4.

 

 

 

 

 

  

 

السؤال 5

أمامك ثلاثة مقاطع كود تشمل عمليّة تُسمَّى num_even والتي معناها عدد زوجيّ.

هدف كلّ واحد من مقاطع الكود هو استقبال 10 أعداد صحيحة وطباعة عدد الأعداد الموجبة المُكوَّنة من رقمَيْن التي ظهرت في المُخْرَج.

على سبيل المثال: بالنسبة إلى تسلسل الأعداد العشرة التالية:

 230 ، 555 – ، 76 ، 5 ، 80 ، 100 – ، 77 ، 8 ، 74 ، 90 يُطبَع الرقم 5.

في كلّ مقطع كود وقع خطأ منطقيّ واحد، ولذلك لا يُحقّق المقطع هدفه.

اشرح ما هو الخطأ وصحّحه.

ملاحظة: الخطأ ليس خطأ تشغيل.

اِفترِض أنّ المُدْخَل سليم ويشمل أعدادًا صحيحة فقط.

 

 

المقطع "أ"

def num_even():

  count = 0

  index = 0

  num = int(input("Enter the integer number"))

  while index < 10 :

    if num <= 99 and num >= 10:

      count = count + 1

    index = index + 1

  print ("count", count)

 

ما هو الخطأ؟ القراءة وضعت خارج الحلقة، يجب أن تكون داخل الحلقة.

 

كيف يمكن تصحيحه؟ تبديل الأسطر

 

 

المقطع "ب"

def num_even():

  count = 0

  index = 0 

  while index < 10 :

    num = int(input("Enter the integer number"))

    if num <= 99 and num >= 10:

      print ("count", count)

    index = index + 1

 

ما هو الخطأ؟  لا يوجد العداد: count = count + 1،

                  وموقع سطر الطباعة خطأ.

 

كيف يمكن تصحيحه؟ كتابة سطر العداد

                            وسطر الطباعة يجب نقلى إلى آخر الكود كما في قسم أ

 

 

المقطع "ج"

def num_even():

  count = 0

  index = 0 

  while index < 10 :   

    if num <= 99 and num >= 10:

      count = count + 1

      num = int(input("Enter the integer number"))     

    index = index + 1

  print ("count", count)

 

ما هو الخطأ؟ موقع سطر لقراءة.

 

كيف يمكن تصحيحه؟ نقل سطر القراءة إلى أول الحلقةـ قبل الشرط.

 

 

 

 

 

  

 

السؤال 6

أمامك مقطع كود يَسْتخدِم مكتبة السلحفاة turtle()

تمّ تشغيل مقطع الكود. أيّ مُخْرَج من بين المُخْرَجات التالية يُعرَض على شاشة الحاسوب؟

أَحِط بدائرة الإجابة الصحيحة.

  

أ)

ب)

ج)

د)

  

الحل شكل  د

 

import turtle

tw = turtle.Screen()

player = turtle.Turtle()

player.shape("square")

size = 100

player.pendown()

for index in range(4):

  for item in range(4):

    player.forward(size)

    player.left(90)

  size = size - 20

 

turtle.mainloop()

 

 

 

 

 

  

 

السؤال 71

مُتَوالِيَة فيبوناتشي هي متواليةٌ الحدّان الأوّل والثاني فيها هما 1، وكلّ حدّ يأتي بعدهما يكون حاصل جَمْع الحدَّيْن اللذَيْن قبله.

أمامك متوالية فيبوناتشي مُكوَّنة من 8 حدود (من اليسار إلى اليمين):

21 , 13 , 8 , 5 , 3 , 2 , 1 , 1

مُعطى أنّ الحدّ الأوّل في المتوالية: first = 1 والحدّ الثاني: second = 1

 

أ. ماذا سيكون الحدّ التالي في المتوالية التي في المثال أعلاه الحدّ التاسع)؟

 

ب. أمامك مقطع كود يَطبع الحدود ال 8 الأولى في المتوالية. أَكمِل المقطع.

first = 1

second = 1

counter=3

print ("Fibonacci item 1 is ",  first)

 

print ("Fibonacci item 2 is ", second)

while counter <= 8:

  third = first  + second

 

  first = second

 

  second =  third

  print ("Fibonacci item ", counter, "is", third )

  counter = counter +    1

 

 

 

 

 

  

 

السؤال 8

قامت إدارة مدرسة "السلام" بتطبيق منهج تعليميّ جديد لتلاميذ طبقة صفوف الثوامن، والذين يبلغ عددهم 300 تلميذ. من أجل فَحْص إذا كان المنهج حَسَّن تحصيل التلاميذ، قرّروا مقارنة علامات التلاميذ في نهاية الفصل الأوّل (gradeA) مع علامات التلاميذ في نهاية الفصل الثاني (gradeB).

 

لهذا الغرض كُتب برنامج يستقبل لكلّ تلميذ العلامة التي حصل عليها في الفصل الأوّل والعلامة التي حصل عليها في الفصل الثاني.

 

يَعُدّ البرنامج ويَطبع عدد التلاميذ الذين حسّنوا علاماتهم. إذا حسَّن أكثر من 200 تلميذ علاماتهم في هذا الفحص، يُطبَع: "المنهج ناجح"، وإلاّ فيُطبَع: "يجب تحسين المنهج".

 

أمامك كود البرنامج. أَكمِل الأوامر الناقصة فيه.

اِنتبِه: هناك أهمّيّة للمُتغيّرات ولوظيفتها في البرنامج.

التحسين معرَّف فقط عندما تكون علامة الفصل الثاني أعلى من علامة الفصل الأوّل أو مُساوية لها.

 

def Exs8():

  counter =   0

  for k in range( 300 ):

    gradeA = int(input("Enter gradeA"))

    gradeB = int(input("Enter gradeB"))

    if gradeB > gradeA :

      counter = counter +   1  

 

  if counter >  200 :

 

    print ("mnhaj success")

  else:

    print ("minhaj not success")

 

Exs8()

 

 

 

 

 

  

 

السؤال 9

كتبَتْ نرجس مقطعًا بِحسبِهِ كلّ ضغطة على الفأرة (نقرة) تؤدّي إلى رَسْم مربّع على الشاشة، في المكان الذي ضغط فيه المستخدِم.

يُرسَم المربّع على الشاشة باللَّوْنَيْن الأحمر والأزرق على التناوب (الضغطة الأولى - أحمر، الضغطة الثانية - أزرق وهكذا دواليك).

 

في كلّ ضغطة يُرسَم مربّع يزيد طول ضلعه بِ 2 (عن المربّع الذي قبله).

أمامك مقطع كود تَنْقُصُه أوامر.

أَكمل الأوامر الناقصة.

ملاحظة: المتغيّر size يمثّل طول ضلع المربّع.

              المتغيّر click_num يمثّل عدد الضغطات (على الفأرة).

 

import turtle

def do_it(x,y):

  global click_num

  global size

  player.penup()

  player.goto(x, y)

  player.shapesize(size)

  if click_num % 2 == 0:

 

    player.color("red")

  else:

    player.color("blue")

  player.stamp()

  click_num = click_num +      1

 

  size = size   +      2

 

tw = turtle.Screen()

click_num = 0

size = 2

tw.onclick(do_it)

player = turtle.Turtle()

player.shape("square")

turtle.mainloop()

 

استعن بالخرن التالي:

 

size

click_num % 2 == 0

2

"blue"

"red"

click_num

1

 

 

 

 

 

 

 

 

https://sites.google.com/site/koftanhatav/_/rsrc/1424517650012/home/math1.png?height=241&width=320    

w4

 

  

 

 

مدرسة قفطان حلبي الإعداديةدالية الكرمل - Copywrite – 2020