Mahmoud Ali Nawwar نشر 19 مارس 2022 أرسل تقرير نشر 19 مارس 2022 (معدل) أردت في هذا الكود أن أقوم بعمل array ثم أقووم بترتيب عناصرها ترتيبا تصاعديا ولكن حدث خطأ أرجو حله package bubble.array; public class BubbleArray { public static void main(String[] args) { int []arr = {10,5,6,23,45,2,8}; for (int i=0; i<arr.length; i++){ for (int j=0; j<arr.length-1-i; j++){ if (arr[i]> arr[i+1]){ swap(arr,i,i+1); } } } System.out.println("arr is:" ); for (int i=0; i<arr.length; i++){ System.out.print(arr[i]+ " " ); } } public static void swap(int arr[] , int m , int n){ int tmb = arr[m]; arr[m] =arr[n]; arr[n]=tmb; } } BubbleArray.java تم التعديل في 19 مارس 2022 بواسطة Wael Aljamal توضيح السؤال + إضافة الشيفرة البرمجية 1 اقتباس
0 Wael Aljamal نشر 19 مارس 2022 أرسل تقرير نشر 19 مارس 2022 لديك المشكلة أن المتغير i سيكون ثابت خلال تكرار الحلقة j وهذا يعني أنه سيقوم بعمل نفس الشرط بين أول عنصرين بدل أن يتحرك المؤشر. لذلك نعدل ضمن الشرط و swap أن j المستخدم و ليس i for (int i=0; i<arr.length; i++){ for (int j=0; j<arr.length-1-i; j++){ if (arr[j]> arr[j+1]){ swap(arr,j,j+1); } } } أرجو التجريب 1 اقتباس
السؤال
Mahmoud Ali Nawwar
أردت في هذا الكود أن أقوم بعمل array ثم أقووم بترتيب عناصرها ترتيبا تصاعديا ولكن حدث خطأ
أرجو حله
BubbleArray.java
تم التعديل في بواسطة Wael Aljamalتوضيح السؤال + إضافة الشيفرة البرمجية
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.