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

السؤال

نشر

السلام عليكم

ده المسائل 

Collection of numbers and I need you to take this collection of numbers and find a maatching pair that is equal to a sum that i give you as well

وده الحل بتاعي 

arr = [1,2,4,4]
sm = 8

for i in range(len(arr) - 1):
    if arr[i] == arr[i+1]:
        if arr[i] + arr[i + 1] == sm:
            print(f"{arr[i]} + {arr[i + 1]} = {sm}")
            
    else:
        print("Not Found pair")

المشكله هنا انا الIf و Else الاثينين بيشتغلو يعني هنا بيحصل خطاء منطقي الصراحه بس مش عارف احل الخطاء ده ازي ؟

Recommended Posts

  • 0
نشر

وعليكم السلام،

المشكلة التي تواجهك هي أنك لا تتحكم في كيفية تداخل الشروط بشكل صحيح، وبالتالي تظهر الرسالة "Not Found pair" حتى عندما تجد الزوج المطلوب. يجب عليك تصحيح منطقك في الحل بحيث تظهر رسالة "Not Found pair" فقط بعد البحث عن كل الأزواج وعدم العثور على أي منهم.

إليك الشيفرة معدلة:

arr = [1, 2, 4, 4]
sm = 8
found = False  # متغير لتحديد إذا ما كان وجدنا زوجًا مناسبًا أم لا

# التحقق من كل زوج من الأرقام
for i in range(len(arr)):
    for j in range(i + 1, len(arr)):
        if arr[i] + arr[j] == sm:
            print(f"{arr[i]} + {arr[j]} = {sm}")
            found = True  # إذا وجدنا زوجًا، نغير قيمة found

# إذا لم يتم العثور على أي زوج
if not found:
    print("Not Found pair")

سيفي هذا بالغرض ويضمن لنا أن الرسالة لن تظهر إلا بعد عدم العثور رعلى زوج.

  • 0
نشر
بتاريخ 6 ساعة قال Adnane Kadri:

وعليكم السلام،

المشكلة التي تواجهك هي أنك لا تتحكم في كيفية تداخل الشروط بشكل صحيح، وبالتالي تظهر الرسالة "Not Found pair" حتى عندما تجد الزوج المطلوب. يجب عليك تصحيح منطقك في الحل بحيث تظهر رسالة "Not Found pair" فقط بعد البحث عن كل الأزواج وعدم العثور على أي منهم.

إليك الشيفرة معدلة:

arr = [1, 2, 4, 4]
sm = 8
found = False  # متغير لتحديد إذا ما كان وجدنا زوجًا مناسبًا أم لا

# التحقق من كل زوج من الأرقام
for i in range(len(arr)):
    for j in range(i + 1, len(arr)):
        if arr[i] + arr[j] == sm:
            print(f"{arr[i]} + {arr[j]} = {sm}")
            found = True  # إذا وجدنا زوجًا، نغير قيمة found

# إذا لم يتم العثور على أي زوج
if not found:
    print("Not Found pair")

سيفي هذا بالغرض ويضمن لنا أن الرسالة لن تظهر إلا بعد عدم العثور رعلى زوج.

شكرااا جدا لحضرتك

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

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

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

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

  • إعلانات

  • تابعنا على



×
×
  • أضف...