Создать двумерный массив из 6 строк по 7 столбцов в каждой из случайных целых чисел из отрезка [0;9]. Вывести массив на экран. Преобразовать массив таким образом, чтобы на первом месте в каждой строке стоял её наибольший элемент. При этом изменять состав массива нельзя, а можно только переставлять элементы в рамках одной строки. Порядок остальных элементов строки не важен (т.е. можно соврешить только одну перестановку, а можно отсортировать по убыванию каждую строку). Вывести преобразованный массив на экран.
public class Zadachi{
public static void main(String[] args){
//Создадим массив
int [][] Mas = new int[6][7];
//Заполним массив
for(int i =0;i<Mas.length;i++){
//Индекс строки для удобства восприятия
System.out.print("Строка №"+i+" ");
for(int h=0;h<Mas[i].length;h++){
Mas[i][h]=(int)(Math.random()*10);
//Выведем на экран элементы строки
System.out.print(Mas[i][h]+" ");
//Создадим две переменные, в которых будет храниться значение максимального элемента строки массива и его индекс
int max=0,temp_index=0;;
//Сохраним значение первого элемента в переменную, с которой будем сравнивать остальные значения элементов. Если значение переменной меньше, переменная получает новое значение, индекс элемента в строке сохраняется во вторую переменную
if(h==0)max=Mas[i][h];
else {
if(max<Mas[i][h]){
max=Mas[i][h];
temp_index=h;
}
}
//По достижению конца строки, меняем местами первый и максимальный элемент, если они отличаются
if(h==Mas[i].length-1){
int temp = Mas[i][0];
Mas[i][0]=Mas[i][temp_index];
Mas[i][temp_index]=temp;
}
}
System.out.println(" ");
}
//Выводим обработанный массив на экран
for(int i =0;i<Mas.length;i++){
System.out.print("Обработанная строка №"+i+" ");
for(int h=0;h<Mas[i].length;h++){
System.out.print(Mas[i][h]+" ");
}
System.out.println(" ");
}
}
}
Комментариев нет:
Отправить комментарий