Simoh نشر 19 نوفمبر 2015 أرسل تقرير نشر 19 نوفمبر 2015 في مصفوفة على لغة Java يقوم المستخدم بإدخال القيم على شكل 3 قيم كل مرة، بحيث تكون المصفوفة على الشكل:[15, 87, 37, 55, 5, 22, 30, 12, 40]وأريد ترتيب عناصر المصفوفة بدلالة الأعمدة 3-3، لتصبح على الشكل:[15, 5, 22, 30, 12, 37, 55, 87, 40]وهذه محاولتي المتواضعة:public static double[][] sortColumns(double[][] array) { double[][] sorted = array; for(int x = 0; x < 3; x++) { Arrays.sort(sorted[x]); } return sorted; } لكن دون جدوى، فما الحل؟ اقتباس
0 E.Nourddine نشر 20 نوفمبر 2015 أرسل تقرير نشر 20 نوفمبر 2015 بما أن المستخدم يُدخل البيانات على شكل 3-3، لنجعل عملية التخزين تتم على أساس الأعمدة وليس الصفوف، أي على هذا الشكل :Scanner scan = new Scanner(System.in); int[] col1 = new int[3]; int[] col2 = new int[3]; int[] col3 = new int[3]; for (int i=0; i<3; i++){ //الترتيب بالإعتماد على الأعمدة لا الصفوف col1[i] = scan.nextInt(); col2[i] = scan.nextInt(); col3[i] = scan.nextInt(); } int[][] matrix = new int[3][3]; matrix[0] = col1; matrix[1] = col2; matrix[2] = col3; for (int i=0; i<3; i++){ // columnsترتيب الأعمدة Arrays.sort(matrix[i]); } //طباعة المحتوى بالإعتماد على الصفوف for (int i=0; i<3; i++){ for (int j=0; j<3; j++){ System.out.print(matrix[j][i]+" "); } System.out.println(); }بعد عملية الفرز اعتمادا على الأعمدة، يمكن تغيير المصفوفة إلى التخزين حسب الصفوف.كما يمكن للمستخدم تعيين حجم المصفوفة، أي بطريقة أخرى يكون حجم المصفوفة ديناميكي، ومُتَحكّم به من طرف المستخدم، بهذا الشكل:Scanner scan = new Scanner(System.in); int N = 3; //حجم المصفوف، والذي يتحكم فيه المستخدم int[][] matrix = new int[N][N]; for (int n=0; n<N; n++){ //بداية الأعمدة for (int column=0; column<N; column++){ matrix[column][n] = scan.nextInt(); //Store based on column } } for (int i=0; i<N; i++){ //ترتيب الأعمدة Arrays.sort(matrix[i]); } for (int i=0; i<N; i++){ for (int j=0; j<N; j++){ System.out.print(matrix[j][i]+" "); } System.out.println(); } اقتباس
السؤال
Simoh
في مصفوفة على لغة Java يقوم المستخدم بإدخال القيم على شكل 3 قيم كل مرة، بحيث تكون المصفوفة على الشكل:
وأريد ترتيب عناصر المصفوفة بدلالة الأعمدة 3-3، لتصبح على الشكل:
وهذه محاولتي المتواضعة:
لكن دون جدوى، فما الحل؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.