Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
bot55555
0 / 0 / 0
Регистрация: 26.12.2018
Сообщений: 2
1

Поменять местами первый и последний столбец заданого 2 - мерного массива

26.12.2018, 12:52. Просмотров 715. Ответов 6
Метки нет (Все метки)

Создать программу Java что меняет местами первый и последний стовбец заданого 2 - мерного массива
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2018, 12:52
Ответы с готовыми решениями:

Поменять местами первый и последний элементы массива
Задан массив, например, а = {5,13,21,37,43,55,62,78,84,93}. Поменять в нем местами первый и...

Во всех словах с четным номером поменять местами первый и последний символы
Здравствуйте . Помогите пожалуйста решить задачу. Недавно начал учить Java и не могу справиться с...

"Разворачивание" массива (поменять местами первый элемент с последним, второй -с предпоследним, и т.д)
Написать программу, которая: 1) спрашивает количество элементов массива (вводим значение с...

Создать метод, который меняет местами первый и последний элементы непустого списка L
Помогите пожалуйста)) Нужно создать метод, который меняет местами первый и последний элементы...

Как поменять местами 1-ю строку и 1 столбец в двухмерном массиве?
int tmp; for (int i = 0; i < arr.length; i++) { for (int j = 0; j < arr.length;...

6
xoraxax
26.12.2018, 13:26
  #2

Не по теме:

без волшебного слова чуда не происходит и студенты становятся солдатами

0
bot55555
0 / 0 / 0
Регистрация: 26.12.2018
Сообщений: 2
26.12.2018, 13:27  [ТС] 3
Помог спасибо
0
ViktorFX
26.12.2018, 15:07
  #4

Не по теме:

Не за что! :)

0
iSmokeJC
Модератор
Эксперт Java
3489 / 1796 / 759
Регистрация: 21.10.2017
Сообщений: 5,426
27.12.2018, 21:14 5
bot55555, дабу
Java
1
2
3
4
5
6
7
8
9
10
public int[][] change(int[][] matrix) {
        int temp;
        int len = matrix[0].length;
        for (int i = 0; i < matrix.length; i++) {
            temp = matrix[i][0];
            matrix[i][0] = matrix[i][len - 1];
            matrix[i][len - 1] = temp;
        }
        return matrix;
    }
Test
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
@Test
    public void changeTest() {
        int[][] matrix = {
                {1, 2, 3, 4, 5},
                {1, 2, 3, 4, 5},
                {1, 2, 3, 4, 5}
        };
 
        int[][] expected = {
                {5, 2, 3, 4, 1},
                {5, 2, 3, 4, 1},
                {5, 2, 3, 4, 1}
        };
 
        int[][] actual = new Cyber().change(matrix);
        assertArrayEquals(expected, actual);
    }
0
Aviz__
1086 / 843 / 200
Регистрация: 17.02.2014
Сообщений: 4,733
28.12.2018, 14:31 6
или вот так:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
public class GenericChangerColomn {
 
    static  <T> void changeItoKColomns(T [][] matrix, int iColmn, int kColmn) {
        T temp;
        for (int i = 0; i < matrix.length; i++) {
            temp = matrix[i][iColmn - 1];
            matrix[i][iColmn - 1] = matrix[i][kColmn - 1];
            matrix[i][kColmn - 1] = temp;
        }
    }
 
    static  <T> void printMatr(T [][] array2Dim) {
        for (T [] row : array2Dim) {
            for (T elem : row)
                System.out.print("" + elem + ",");
            System.out.println();
        }
        System.out.println("-----");
    }
 
    public static void main(String[] args) {
        Integer [][] intMat = {{1, 2}, {3, 4},}; // тип Integer
        printMatr(intMat);
        changeItoKColomns(intMat, 1, 2);
        printMatr(intMat);
        String [][] strMat = {{"one", "two"}, {"3", "4"},};  // тип String, а метод печати и обмена тот же!
        printMatr(strMat);
        changeItoKColomns(strMat, 1, 2);
        printMatr(strMat);
    }
}
0
ViktorFX
363 / 202 / 53
Регистрация: 11.12.2016
Сообщений: 970
28.12.2018, 16:36 7
Можно еще так :
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class ChangeTwoCollumnArray{
 
    public static void main(String[] args){
        int[][] arr = new int[5][5];
        for(int i=0; i<5; i++)
            for(int j=0; j<5; j++)
                arr[i][j] = ThreadLocalRandom.current().nextInt(0,100);
        System.out.println("Array : ");
        for(int[] i : arr) System.out.println(Arrays.toString(i));
        System.out.println("Array after change :");
        IntStream.range(0,arr.length)
                .peek(i -> {int j = arr[i][0]; arr[i][0]=arr[i][4]; arr[i][4]=j;})
                .forEach(i -> System.out.println(Arrays.toString(arr[i])));
    }
}
Код
Array : 
[44, 90, 38, 88, 0]
[53, 97, 82, 3, 8]
[15, 44, 30, 91, 85]
[88, 17, 37, 87, 8]
[93, 96, 66, 85, 4]
Array after change :
[0, 90, 38, 88, 44]
[8, 97, 82, 3, 53]
[85, 44, 30, 91, 15]
[8, 17, 37, 87, 88]
[4, 96, 66, 85, 93]
Добавлено через 5 минут
извиняюсь за свой английский
0
28.12.2018, 16:36
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.12.2018, 16:36

Поменять местами первый и последний столбец массива
Доброго времени суток. У меня проблема: написал практически всю программу, но остановился на одном...

Поменять местами первый и последний столбец, после поменять местами первый и предпоследний строки
Масив 4х4, нужно поменять местами первый и последний столбец, после поменять местами первый и...

Поменять местами первый и последний столбец матрицы
Поменять местами первый и последний столбец матрицы


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.