اذهب إلى المحتوى

السؤال

نشر (معدل)

اكتبي برنامج يطلب من المستخدم ادخال أرقام و إن أدخل رقمين بشكل متتابع يقوم بطباعة   عبارة تعني ان الرقم تكرر و عند الضغط على # يخرج من البرنامج مثال :
 


5

5

the number 5 is duplicated

3

5

7

1

1

the number 5 is duplicated

#

..Bye

 أكتبي برنامج لطباعة الشكل التالي

1

12

123

1234

12345

123456

1234567

12345678

123456789

12345678910

 

تم التعديل في بواسطة عزام عبد الحافظ
عنوان السؤال غير واضح و مفيد

Recommended Posts

  • 0
نشر

مرحبًا @شمس رائد

بلغة البايثون يمكنك عمل المطلوب بهذه الطريقة , اولاً إدخال الارقام :

سنقوم بعمل حلقة while لإعادة طلب المستخدم على إدخال رقم و شرط حلقة while هو التأكد من ان المستخدم لم يدخل علامت # و اذا فعل تنتهي حلقة while و نطبع للمستخدم جملة '..Bye' , نقوم بحفظ الارقام الجديدة الى مصفوفة تدعى all_user_inputs و داخل شرط if نضيف رقم المستخدم الى المصفوفة او اذا كان مكرر نخبر المستخدم بذلك :

all_user_inputs = [] #مصفوفة تحتفظ بجميع الارقام الجديدة فقط


user_input = input("Type in a number: ")


while user_input != "#": # حلقة تكرار لمتابعة سؤال المستخدم من كتابة رقم

    if user_input in all_user_inputs: #في حال كان الرقم موجود مسبقاً في المصفوفة
        print("the number " + user_input + " is duplicated")
    else: # اذا الرقم جديد نحتفظ به في المصفوفة
        all_user_inputs.append(user_input)

    user_input = input("Type in a number: ")


print("Bye..")

اما عن المشكلة الثانية , سوف نجعل الارقام من 1 الى 10 داخل مصفوفة و بإستخدام حلقة تكرار while و for loop  , سنقوم بإستخدام متغير عليه رقم 1 , بإستعمال هذا المتغير نتحكم في الارقام التي تقوم حلقة for من طباعتها , while تتحقق من ان m لم يتعدى الرقم الذي هو عدد الارقام التي توجد داخل مصفوفة الارقام , ثم تقوم حلقة for بطاعة الارقام من المصفوفة على عدد متغير m فقط ثم نقوم بزيادة متغير m بواحد حتى نطبع رقم جديدة في التكرار القادم :

nums = [1,2,3,4,5,6,7,8,9,10] # الارقام التي نريد طباعتها تدرجيًا


m = 1 #متغير التحكم في حلقة الكرار للطابعة

while m <= len(nums): #nums اقل من عدد المصفوفة  m تأكد من ان 
    
    for i in range(m): # m على عدد nums طباعة الارقام من 
        print(nums[i],end = '')

    print("\n")
    m += 1 #m زيادة المتغير 

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...