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

كيفية جعل المستخدم يقوم بإنشاء قائمة في بايثون

Nada عمير

السؤال

Recommended Posts

  • 0

لا نجيب هنا في الأكاديمية على أسئلة الإختبارات ولكن يمكننى توضيح فكرة الحل لكي .

يمكنكي إستخدام حلقة التكرار while لتحقيق ذلك. 

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

ثم بعد ذلك نقوم بإنشاء متغير يحوى قيمة صفر , ثم بعد ذلك ننشأ مصفوفة فارغة .

ثم نقوم بعمل while loop وجعل الشرط هو التاكد من أن المتغير الذى قمنا بوضع قيمة إبتدائية له ليس اكبر من المتغير size الذى قام المستخدم بإدخاله  وفي كل مرة داخل ال loop نقوم بسؤال المستخدم عن الرقم الجديد الذى يريد إضافته للمصفوفة وبعد ذلك نقم بوضعه داخل المصفوفة وبعد ذلك لا ننسى أن نقوم بزيادة قيمة المتغير ب 1 حتى لا يتم تنفيذ ال loop دائما . 

وهكذا قد تم إنشاء القائمة لدينا . 

يمكنك كتابة الكود بنفسك وإذا واجهتك أى مشكلة به فقط أخبرينى 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 2 ساعة قال محمد_عاطف:

لا نجيب هنا في الأكاديمية على أسئلة الإختبارات ولكن يمكننى توضيح فكرة الحل لكي .

يمكنكي إستخدام حلقة التكرار while لتحقيق ذلك. 

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

ثم بعد ذلك نقوم بإنشاء متغير يحوى قيمة صفر , ثم بعد ذلك ننشأ مصفوفة فارغة .

ثم نقوم بعمل while loop وجعل الشرط هو التاكد من أن المتغير الذى قمنا بوضع قيمة إبتدائية له ليس اكبر من المتغير size الذى قام المستخدم بإدخاله  وفي كل مرة داخل ال loop نقوم بسؤال المستخدم عن الرقم الجديد الذى يريد إضافته للمصفوفة وبعد ذلك نقم بوضعه داخل المصفوفة وبعد ذلك لا ننسى أن نقوم بزيادة قيمة المتغير ب 1 حتى لا يتم تنفيذ ال loop دائما . 

وهكذا قد تم إنشاء القائمة لدينا . 

يمكنك كتابة الكود بنفسك وإذا واجهتك أى مشكلة به فقط أخبرينى 

# # // قم بكتابة دالة تستقبل مصفوفة من المستخدم وتقوم بطباعة جميع عناصر المصفوفة ماعدا العنصر رقم 3

 def func():
   size=int(input("enter the number of your array's size"))
   c=0
   array=[]
  while c <size:
    value=int(input("enter one items"))
    c+=1
    if value ==3:
     continue 
    array.append(value)
  c+=1
  print(array)  
func()
الكود بعد تنفيذ التعليمات
مع العلم انا لم ادخل للامتحان بعد ولكن كنت ارغب في الحصول على المساعدة لحل السؤال اعلاه
السؤال الان هذا الكود نفذ لي المطلوب ولكن ارغب معرفة مستوى الكود وهل يوجد اختصار او حل افضل للحصول على نفس النتيجة للاستفادة فقط
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 7 دقائق مضت قال Nada عمير:
السؤال الان هذا الكود نفذ لي المطلوب ولكن ارغب معرفة مستوى الكود وهل يوجد اختصار او حل افضل للحصول على نفس النتيجة للاستفادة فقط

نعم أحسنتي الكود جيد ولكن توجد بعض المشاكل و بعض التعليقات .

أولا إن المطلوب هو إستقبال عناصر المصفوفة من المستخدم ومن ثم طباعة جميع العناصر ما عدى العنصر رقم 3 في المصفوفة . 

وما قمتى به هو طباعة المصفوفة بأكملها مع جميع العناصر وقمتي فقط بالتاكد من ان القيمة المدخلة هى 3 وليس مكان عنصر المصفوفة .

أما بالنسبة لمستوى الكود فهو جيد لا مشكلة به و لا يمكن إختصاره أكثر من هذا .

والآن لنصلح الأخطاء معا : 

بالنسبة لهذا السطر c+=1 انتي تقومين بتنفيذه مرتين وهكذا فإن المستخدم إذا ادخل مثلا حجم المصفوفة 4 سيتم سؤاله مرتين فقط وستصبح المصفوفة يوجد بها عنصرين فقط أى ان نصف المصفوفة لن يتم إنشاءه والحل هو إدخال c+=1 بداخل هذا الشرط قبل سطر continue  

بتاريخ 15 دقائق مضت قال Nada عمير:
if value ==3:

والخطأ الثانى هو أننا يجب أن نتاكد من المتغير c وليس value لانه كما أخبرتك يريد طباعة المصفوفة ما عدا العنصر الثالث وليس رقم 3 .

وايضا بما أنكى قمتى بوضع المتغير c ب 0 إبتداءا إذا فإن العنصر الثالث سيكون ترتيبه 2 . 

ليصبح الكود الصحيح كالتالي :

def func():
    size=int(input("enter the number of your array's size"))
    c=0
    array=[]
    while c < size:
        value=int(input("enter one items"))
        if c == 2:
            c+=1
            continue 
        array.append(value)
        c+=1
        
    for i in array:
        print(i)
func()

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...