С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
29 / 29 / 2
Регистрация: 17.12.2012
Сообщений: 493
1

Обмен элементов матрицы

05.06.2013, 17:07. Показов 2640. Ответов 20
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день всем =) Есть задача: составить программу обмена первого и третьего элемента 5-й строки матрицы.
Нужно написать прогу с помощью ArrayList, простую программку. Элементы матрицы можно заполнить рандомно. А вот доступ к элементам и собственном обмен местами нужно с помощью методов типа get(), set() и т.д. Друзья, так как я в этом не разбираюсь, то прошу вас помочь мне, буду очень благодарен)))))
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.06.2013, 17:07
Ответы с готовыми решениями:

Обмен максимального и минимального элементов матрицы: перевод с C++
int i,j,N,M,a,min_i,max_j,min_j,max_i,temp; void reverce(void) { min_i = 0; max_j = 0;...

Обмен значениями элементов первой и последний строки матрицы
Привет народ. Помогите написать программу . По теме Вычисления в табличной модели данных(обработка...

Обмен значений первого и последнего элементов главной диагонали квадратной матрицы
Помогите решить 2 задачи: 1)Составить программу обмена первого и последнего элементов главной...

Поменять в каждой строке между собой элементы главной и неглавной диагоналей матрицы А. Обмен значениями элементов двух
Поменять в каждой строке между собой элементы главной и неглавной диагоналей матрицы А. Обмен...

20
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
05.06.2013, 17:51 2
ловите мысль
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
32
33
34
import java.util.ArrayList;
 
public class Clazz {
 
    public static void main(String[] args) {
    
        ArrayList<Integer>[] arList = new ArrayList[5];
        arList[0] = new ArrayList<Integer>();
        arList[1] = new ArrayList<Integer>();
        arList[2] = new ArrayList<Integer>();
        arList[3] = new ArrayList<Integer>();
        arList[4] = new ArrayList<Integer>(); // вот она, пятая строка массива
        
        // забиваем значения
        arList[4].add(1); 
        arList[4].add(2);
        arList[4].add(3);
        arList[4].add(4);
        arList[4].add(5);
        // смотрим что получилось (по порядку 1, 2, 3, 4, 5)
        System.out.println(arList[4]);
        
        // шаманство
        int temp;
        temp = arList[4].get(0);
        arList[4].set(0, arList[4].get(2));
        arList[4].set(2, temp);
        
        // смотрим на что поменялось
        System.out.println(arList[4]);
        
    }
 
}
1
29 / 29 / 2
Регистрация: 17.12.2012
Сообщений: 493
05.06.2013, 18:10  [ТС] 3
а как в JAVA матрицу вывести в консоль из произвольных чисел??? покажите пожалуйста реализацию, можно в этой же проге поменять если можно, будет совсем уж хорошо)))
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
05.06.2013, 18:20 4
для вас что угодно, коль вам от этого будет хорошо

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
32
33
34
35
import java.util.ArrayList;
 
public class Clazz {
 
    public static void main(String[] args) {
 
        ArrayList<Integer>[] arList = new ArrayList[5];
 
        // забиваем значения и печатаем на экран
        for (int i = 0; i < arList.length; i++) {
            arList[i] = new ArrayList<Integer>();
            for (int j = 0; j < (5 + Math.random() * 10); j++) {
                arList[i].add((int) (Math.random() * 10));
                System.out.print(arList[i].get(j) + " ");
            }
            System.out.println();
        }
 
        // шаманство с 5й строкой
        int temp;
        temp = arList[4].get(0);
        arList[4].set(0, arList[4].get(2));
        arList[4].set(2, temp);
 
        System.out.println("\nСмотрим что поменялось:");
        for (int i = 0; i < arList.length; i++) {
            for (int j = 0; j < arList[i].size(); j++) {
                System.out.print(arList[i].get(j) + " ");
            }
            System.out.println();
        }
 
    }
 
}
1
29 / 29 / 2
Регистрация: 17.12.2012
Сообщений: 493
05.06.2013, 18:29  [ТС] 5
А как то странно вывод делается(((
2 4 3 3 1 8 2 8 9 4
5 1 5 3 1 9 1 0
9 0 5 5 1 8 3 9 7 5 2
2 3 8 5 1 7 3 4 4
1 7 0 3 1 8 9

Смотрим что поменялось:
2 4 3 3 1 8 2 8 9 4
5 1 5 3 1 9 1 0
9 0 5 5 1 8 3 9 7 5 2
2 3 8 5 1 7 3 4 4
0 7 1 3 1 8 9

Добавлено через 1 минуту
нужно чтоб 5х5 четко была матрица)))
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
05.06.2013, 18:31 6
а что вы хотите то? массив из пяти строк с "произвольным" количеством элементов (ну этим мы берем и подчеркиваем то, почему используем ArrayList). А вот в пятой строке меняет первый и третий элементы. Что именно вы хотели бы изменить?

Добавлено через 1 минуту
Цитата Сообщение от Alexandr1966 Посмотреть сообщение
нужно чтоб 5х5 четко была матрица)))
тю, дак нема ж питань!

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
32
33
34
35
import java.util.ArrayList;
 
public class Clazz {
 
    public static void main(String[] args) {
 
        ArrayList<Integer>[] arList = new ArrayList[5];
 
        // забиваем значения и печатаем на экран
        for (int i = 0; i < arList.length; i++) {
            arList[i] = new ArrayList<Integer>();
            for (int j = 0; j < 5; j++) {
                arList[i].add((int) (Math.random() * 10));
                System.out.print(arList[i].get(j) + " ");
            }
            System.out.println();
        }
 
        // шаманство с 5й строкой
        int temp;
        temp = arList[4].get(0);
        arList[4].set(0, arList[4].get(2));
        arList[4].set(2, temp);
 
        System.out.println("\nСмотрим что поменялось:");
        for (int i = 0; i < arList.length; i++) {
            for (int j = 0; j < arList[i].size(); j++) {
                System.out.print(arList[i].get(j) + " ");
            }
            System.out.println();
        }
 
    }
 
}
1
29 / 29 / 2
Регистрация: 17.12.2012
Сообщений: 493
05.06.2013, 18:32  [ТС] 7
нет нет, наверное вы меня неправильно поняли, матрица должна была быть 5 на 5, или 6 на 6, то есть четко квадратом элементы. ну вы понимаете наверное о чем я)) возможен такой вывод???
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
05.06.2013, 18:33 8
пользователь сам задает какой должна быть матрица? или отдадим эту сложную логику программе?
0
29 / 29 / 2
Регистрация: 17.12.2012
Сообщений: 493
05.06.2013, 18:34  [ТС] 9
отдадим программе, ну чтоб наверное максимум она делала 10 на 10 =)
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
05.06.2013, 18:36 10
тогда вот так
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
32
33
34
35
36
import java.util.ArrayList;
 
public class Clazz {
 
    public static void main(String[] args) {
        int arraySize = (int)(5 + Math.random() * 5);
        ArrayList<Integer>[] arList = new ArrayList[arraySize];
 
        
        // забиваем значения и печатаем на экран
        for (int i = 0; i < arList.length; i++) {
            arList[i] = new ArrayList<Integer>();
            for (int j = 0; j < arraySize; j++) {
                arList[i].add((int) (Math.random() * 10));
                System.out.print(arList[i].get(j) + " ");
            }
            System.out.println();
        }
 
        // шаманство с 5й строкой
        int temp;
        temp = arList[4].get(0);
        arList[4].set(0, arList[4].get(2));
        arList[4].set(2, temp);
 
        System.out.println("\nСмотрим что поменялось:");
        for (int i = 0; i < arList.length; i++) {
            for (int j = 0; j < arList[i].size(); j++) {
                System.out.print(arList[i].get(j) + " ");
            }
            System.out.println();
        }
 
    }
 
}
надеюсь вы понимаете что защищать программу вам
1
Золотце
05.06.2013, 18:39
  #11

Не по теме:

Цитата Сообщение от tankomaz Посмотреть сообщение
int arraySize = (int)(5 + Math.random() * 5);
мощно, уверенно, надежно

0
29 / 29 / 2
Регистрация: 17.12.2012
Сообщений: 493
05.06.2013, 18:39  [ТС] 12
Огромное вам спасибо , очень вам признателен. Я рад, что есть на свете такие люди, готовые просто взять и помочь бедным студентам =) А про защиту программы - это я как нибудь сам разберусь))) Давно программируете на JAVA ????
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
05.06.2013, 18:40 13
с воскресенья
0
29 / 29 / 2
Регистрация: 17.12.2012
Сообщений: 493
05.06.2013, 18:42  [ТС] 14
Да ладно?!) С трудом вериться, ну если это так, то вы очень быстро обучаетесь, это очень здорово))) Наверное подобные задачи уже делали?
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
05.06.2013, 18:44 15
я же не уточнял ни месяца, ни года. Успехов Вам в познании! =)
0
29 / 29 / 2
Регистрация: 17.12.2012
Сообщений: 493
05.06.2013, 18:48  [ТС] 16
А кстати, вы работали с такой функцией как TreeSet??? Просто есть задача, которую я тоже не могу сделать, где применяется эта функция((( а задача звучит так: Даны два множеств. Постройте из них следующее множество:
(A U B) / A ???????
Например:
A = {1,2,3,4}
B = {1,3,5,7}
A U B = {1,2,3,4,5,7}
(A U B) / A ={}

Добавлено через 1 минуту
/ - разность множеств

Добавлено через 37 секунд
наверное, слэш в обратную сторону пишется, \ =))))

Добавлено через 2 минуты
и там тоже нужны методы add и так далее
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
05.06.2013, 18:59 17
Цитата Сообщение от Alexandr1966 Посмотреть сообщение
А кстати, вы работали с такой функцией как TreeSet??? Просто есть задача, которую я тоже не могу сделать, где применяется эта функция((( а задача звучит так: Даны два множеств. Постройте из них следующее множество:
(A U B) / A ???????
Например:
A = {1,2,3,4}
B = {1,3,5,7}
A U B = {1,2,3,4,5,7}
(A U B) / A ={}

Добавлено через 1 минуту
/ - разность множеств

Добавлено через 37 секунд
наверное, слэш в обратную сторону пишется, \ =))))

Добавлено через 2 минуты
и там тоже нужны методы add и так далее
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
32
33
34
35
36
37
import java.util.TreeSet;
 
 
public class Clazz {
 
    public static void main(String[] args) {
        // создаем и заполняем А
        TreeSet treeSetA = new TreeSet<>();
        for (int i = 0; i < 5; i++) {
            treeSetA.add(i);
        }
        
        // создаем и заполняем В
        TreeSet treeSetB = new TreeSet();
        for (int i = 0; i < 5; i++) {
            treeSetB.add((int)(Math.random() * 10));
        }
        
        // выводим на экран А и В
        System.out.println(treeSetA);
        System.out.println(treeSetB);
        
        // создаем РезультативныйСет, в котором и А и В. Печатаем
        TreeSet rezult = new TreeSet<>();
        rezult.addAll(treeSetA);
        rezult.addAll(treeSetB);
        System.out.println(rezult);
        
        // результативныйСет за исключением элементов А, печатаем
        rezult.removeAll(treeSetA);
        System.out.println(rezult);
  
        
 
    }
 
}
0
29 / 29 / 2
Регистрация: 17.12.2012
Сообщений: 493
06.06.2013, 11:34  [ТС] 18
TreeSet treeSetA = new TreeSet<Object>();
TreeSet rezult = new TreeSet<Object>();

Вот на эти две строчки Eclipse ругался, потому что отсутствовало слово <Object>, я его поставил, и вроде бы все прекрасно заработало =)
Спасибо вам за помощь!!!! =)))

Добавлено через 3 часа 11 минут
Цитата Сообщение от Alexandr1966 Посмотреть сообщение
(A U B) \ A ???????
Например:
A = {1,2,3,4}
B = {1,3,5,7}
A U B = {1,2,3,4,5,7}
(A U B) \ A ={}
Правильно ли я тут вообще посчитал, результатом действительно выходит пустое множество, конкретно в этом примере?

Добавлено через 7 минут
или здесь результатом должно быть множество {5,7}

Добавлено через 2 часа 14 минут
да точно, здесь же ответ {5,7}
0
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
06.06.2013, 12:09 19
уж лучше TreeSet treeSetA = new TreeSet<Integer>(), то я вчера наверное был в неадекватном состоянии в конце рабочего дня коль такое пропустил
0
142 / 105 / 16
Регистрация: 21.04.2011
Сообщений: 402
06.06.2013, 12:17 20
Цитата Сообщение от tankomaz Посмотреть сообщение
TreeSet treeSetA = new TreeSet<Integer>()
да нет. все равно не очень. Чоб впереди еще дженерик не поставить?
0
06.06.2013, 12:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.06.2013, 12:17
Помогаю со студенческими работами здесь

Ввод матрицы, вывод матрицы, обмен строк
5. Даны матрицы А(6,3) и В(4,5).Найти наибольший элемент каждой матрицы и записать 1 в ту строку и...

Исследовать сортировки(вставками, бинарными вставками, обмен, Шелла) на числовых массивах, размерностью 50 элементов, 100 элементов, 500 элементов. Дл
А) Исследовать сортировки(вставками, бинарными вставками, обмен, Шелла) на числовых массивах,...

Обмен столбцов матрицы по условиям
24. Дана матрица размера N×M. Поменять местами столбец с номером 11|M2 и первый3|последний4 из...

След матрицы, обмен строки и диагонали
1 задание Ввести квадратные матрицы X1 N1×N1 , X2 N2×N2 и X3 N3×N3 . Найти минимальное...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru