profile
[/banner_gorizont_adaptive]
Размещено 5 лет назад по предмету Информатика от novokuznetsk

[JAVA] ДАНА ВЕЩЕСТВЕННАЯ МАТРИЦА РАЗМЕРОМ 10Х40. УПОРЯДОЧИТЬ ЕЕ СТРОКИ ПО УБЫВАНИЮ СУММЫ ИХ ЭЛЕМЕНТОВ

  1. Ответ на вопрос
    Ответ на вопрос дан alebasterr

    public class MyClass {

       public static void main(String args[]) {

           

           int dimention1 = 10;

           int dimention2 = 5;//40

           

           double[][] matrix = new double[dimention1][dimention2];

           

           fill(matrix);

           print(matrix);

           matrix = sort(matrix, getOrder(matrix));

           print(matrix);

       }

       

       

       private static double[][] sort(double[][]matrix, int[] order)

       {

           double[][] ret = new double[matrix.length][matrix[0].length];

           

           for (int i=0;i<matrix.length;i++ )

           {

               for (int j=0;j<matrix[i].length;j++ )

               {

                   ret[i][j] = matrix[order[i]][j];

               }

           }

           return ret;

       }

       

       private static void fill(double[][] matrix)

       {

           for (int i=0;i<matrix.length;i++ )

           {

               for (int j=0;j<matrix[i].length;j++ )

               {

                   matrix[i][j] = Math.random()*10;

               }

           }

       }

       

       private static int[] getOrder(double[][] matrix)

       {

           double[] sums = new double[matrix.length];

           for (int i=0;i<matrix.length;i++ )

           {

               for (int j=0;j<matrix[i].length;j++ )

               {

                   sums[i]+=matrix[i][j];

               }

           }

           

           int[] order = new int[sums.length];

           for (int i=0;i<sums.length;i++ )

           {

               order[i] = i;

           }

           

           for (int i=0;i<sums.length;i++ )

           {

               for (int j=i+1;j<sums.length;j++ )

               {

                   if(sums[i]<sums[j])

                   {

                       double tmp1 = sums[i];

                       int tmp2 = order[i];

                       sums[i] = sums[j];

                       order[i] = order[j];

                       sums[j] = tmp1;

                       order[j] = tmp2;

                   }

                   

               }

           }

           return order;

       }

       

       private static void print(double[][] matrix )

       {

           for (int i=0;i<matrix.length;i++ )

           {

               double sum = 0.0;

               for (int j=0;j<matrix[i].length;j++ )

               {

                    System.out.print(matrix[i][j]+" ");

                    sum+=matrix[i][j];

               }

               System.out.println(" sum: "+sum);

           }

           System.out.println();

       }

    }


Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 5 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.