الكود الذي كتبته يحاول فحص مجموع كل زوجين من الأرقام في المصفوفة للتحقق مما إذا كان مجموعهما يساوي صفر أم لا. ولكن هناك مشكلة في الدورة الداخلية حيث يتم تفقد كل زوج من الأرقام مرة واحدة فقط، وهذا يؤدي إلى عدم فحص جميع الأزواج بشكل كامل.
لحل هذه المشكلة، يمكنك تعديل الكود لضمان فحص كل زوج من الأرقام بشكل صحيح. إليك نسخة معدلة من الكود:
-
حل مشكلة C++: خطأ C2679 وكيفية تصحيحه03/04/2024
-
تحسين SEO لموقعك: نصائح فعّالة01/04/2024
-
نشر مجلد ‘dist’ باستخدام Travis-CI و npm15/02/2024
javapublic static void main(String[] args) {
Scanner input = new Scanner(System.in);
int[] array = new int[5];
System.out.print("Please enter five numbers. \na=");
array[0] = input.nextInt();
System.out.print("\nb=");
array[1] = input.nextInt();
System.out.print("\nc=");
array[2] = input.nextInt();
System.out.print("\nd=");
array[3] = input.nextInt();
System.out.print("\ne=");
array[4] = input.nextInt();
boolean totalIsZero = false;
for (int i = 0; i < array.length; i++) {
for (int j = i + 1; j < array.length; j++) {
if ((array[i] + array[j]) == 0) {
System.out.println("The numbers " + array[i] + " and " + array[j] + " have a total sum equal to 0.");
totalIsZero = true;
}
}
}
if (!totalIsZero) {
System.out.print("None of the numbers have a total sum of 0 with each other. ");
}
}
في هذا الإصدار المعدل، تم تغيير الشرط في الدورة الداخلية للتحقق من مجموع الأزواج بشكل صحيح. يتم الآن فحص جميع الأزواج بدءًا من الرقم الحالي في الدورة الخارجية وحتى نهاية المصفوفة. بذلك، يتم التحقق من كل الأزواج بشكل صحيح، ويتم طباعة الرسالة لكل زوج من الأرقام الذين يكون مجموعهما يساوي صفر.
المزيد من المعلومات
في هذا السياق، يمكننا التفصيل أكثر حول الكود المعدل وكيف يتعامل مع البيانات المدخلة وكيف يُظهر النتائج.
في بداية البرنامج، يتم استخدام كائن Scanner
للحصول على إدخال المستخدم الذي يُمثل خمسة أرقام يتم تخزينها في مصفوفة array
، حيث يُطلب من المستخدم إدخال قيم لكل عنصر على حدة.
ثم يتم استخدام دورة تكرارية مزدوجة، حيث يتم استخدام المتغير i
لتمثيل العنصر الحالي والمتغير j
لتمثيل العنصر الآخر الذي يجب فحصه بالمقارنة مع i
. يُستخدم شرط التحقق if
لفحص ما إذا كان مجموع العنصرين يساوي صفر. إذا كان الشرط صحيحًا، يتم طباعة رسالة تُبلغ المستخدم بأن هناك زوجًا من الأرقام يكون مجموعهما يساوي صفر.
أخيرًا، يتم التحقق مما إذا كانت أي من الأزواج قد أعلنت بالفعل (من خلال المتغير totalIsZero
). إذا لم يكن هناك أي إعلان، يتم طباعة رسالة أخيرة تُبلغ المستخدم أنه لا يوجد زوج من الأرقام يكون مجموعهما يساوي صفر.
هذا الإصدار المعدل من الكود يتيح للبرنامج فحص جميع الأزواج بشكل صحيح وإعلان النتائج بشكل دقيق، حيث يظهر الناتج بشكل طبيعي وواضح للمستخدم.