Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
beetle931
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 11
#1

Как записать элементы матрицы в обратном порядке C++ - C++

15.11.2013, 11:42. Просмотров 886. Ответов 16
Метки нет (Все метки)

Не получается записать столбцы матрицы в обратном порядке пробовал такой способ:
C++
1
2
3
4
5
6
7
for(i=0;i<n;i++)
        {
           for(j=0;j<m;j++)
{
     x[i][j]=x[n-i-1][j];
}
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2013, 11:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как записать элементы матрицы в обратном порядке C++ (C++):

Записать все элементы массива в другой массив в обратном порядке - C++
ЗАДАЧА 2. Задан массив Z(k) целых чисел. Записать все элементы массива Z в массив Y, записав числа в обратном порядке (например, 1234...

Дан массив целых чисел. Записать его элементы в обратном порядке. - C++
Доброго времени суток. Помогите, пожалуйста, в следующем. Дан массив целых чисел. Записать его элементы в обратном порядке. Что...

Разместить элементы матрицы в обратном порядке - C++
помогите пожалуйста написать программу(С++) Дана действительная матрица размером NxM. Разместить элементы прямоугольной матрици в...

Переставить в обратном порядке элементы строк матрицы - C++
Привет,народ) Помогите пожалуйста написать код программы на С++, задача такая: Дана матрица размера . Переставить в обратном порядке...

Написать и протестировать подпрограмму, которая переставляет в обратном порядке элементы главной диагонали квадратной матрицы - вывод всей матрицы - C++
Не знаю как сделать чтоб вся матрица была задание Написать и протестировать подпрограмму, которая переставляет в обратном порядке элементы...

Переставить элементы главной диагонали матрицы в обратном порядке - C++
Дана вещественная матрица А(4х4). Переставить элементы ее главной диагонали в обратном порядке и вывести измененную матрицу. П.С. я не...

16
oxotnik
1590 / 1067 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
15.11.2013, 11:51 #2
http://www.cplusplus.com/reference/algorithm/reverse/
1
beetle931
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 11
15.11.2013, 12:19  [ТС] #3
А в Qt Creater такое можно сделать...??
0
Progers
New to C++
83 / 44 / 5
Регистрация: 14.01.2013
Сообщений: 258
15.11.2013, 12:44 #4
На QT Creator, много чего можно сделать
0
beetle931
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 11
15.11.2013, 12:47  [ТС] #5
Это и так понятно, что много чего можно сделать, а именно это как сделать...??)
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
15.11.2013, 14:19 #6
Цитата Сообщение от beetle931 Посмотреть сообщение
а именно это как сделать...??)
чем Вас не устраивает вариант oxotnik? Если уж очень нужен алгоритм Qt, то пишите в ветку по Qt.
0
beetle931
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 11
15.11.2013, 14:34  [ТС] #7
Просто хотел узнать может есть другие варианты....
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
15.11.2013, 14:47 #8
Цитата Сообщение от beetle931 Посмотреть сообщение
Просто хотел узнать может есть другие варианты....
Конечно есть. Можно написать самопальный например.
0
beetle931
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 11
15.11.2013, 15:07  [ТС] #9
Опешите поподробнее этот способ... Заранее спасибо.
0
Kuzia domovenok
1892 / 1747 / 119
Регистрация: 25.03.2012
Сообщений: 5,936
Записей в блоге: 1
15.11.2013, 15:11 #10
Ошибка автора в том, что for i должен идти не до i<n, а до i<n/2. Иначе, дойдя до половины матрицы, цикл её успешно переворачивает полностью и начинает ещё раз переворачивать, но теперь уже в исходное состояние! Так что исправить можно, лишь заменив i<n на i<n/2 и этого будет достаточно!
Однако, вот ещё мой вариант
C++
1
2
3
4
int l=0, r=n-1;
while (l++<r--)
  for (j=0; j<m; j++)
     x[l][j]^=x[r][j]^=x[l][j]^=x[r][j];
1
beetle931
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 11
15.11.2013, 15:20  [ТС] #11
Огромное спасибо!)
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
15.11.2013, 15:25 #12
только вот лучше заюзать std::swap, чем играть с xor'ам.
0
Kuzia domovenok
1892 / 1747 / 119
Регистрация: 25.03.2012
Сообщений: 5,936
Записей в блоге: 1
15.11.2013, 15:34 #13
Tulosba, ну я хотел попроще вариант дать, без использования stl вообще, если автора std::reverse не устраивал
Плюс зря я написал, что автору достаточно исправить n на n/2 в его собственном варианте
Очевидно, что в его варианте нету ещё и обмена значений
0
beetle931
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 11
15.11.2013, 15:37  [ТС] #14
А кто-нибудь может помочь еще с этим:
Дан вещественный массив А[N][N]. Вывести на экран значения тех эле-ментов, лежащих выше главной диагонали, которые больше всех элементов, лежащих ниже главной диагонали.
Пробовал создавал дополнительный массив записывал в него элементы которые выше главной диагонали, обнулял первоначальный массив выше главной диагонали и саму главную диагональ, а потом сравнивал два массива и выводил..
Если надо будет завтра скину написаный код...
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
15.11.2013, 15:42 #15
Kuzia domovenok, дело в том, что если массив будет содержать нечто отличное от целых чисел, то обмен через xor конечно же не сработает. Это надо иметь в виду.

Не по теме:

Цитата Сообщение от beetle931 Посмотреть сообщение
А кто-нибудь может помочь еще с этим:
Один вопрос - одна тема.

1
15.11.2013, 15:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.11.2013, 15:42
Привет! Вот еще темы с ответами:

В каждой строке матрицы переставить в обратном порядке элементы - C++
Разработать программу обработки прямоугольной матрицы – двумерного динамического массива. В каждой строке матрицы переставить в обратном...

Записать элементы массива в обратном порядке: первый элемент должен оказаться на последнем месте, второй - на предпоследнем - C++
Записать элементы массива в обратном порядке: первый элемент должен оказать- ся на последнем месте, второй - на ...

Переставить в обратном порядке элементы матрицы, расположенные между последним и минимальным - C++
В каждой строке матрицы переставить в обратном порядке элементы, расположенные между последним и минимальным элементами.

Как на C++ записать СТРОКИ в обратном порядке? Выдает ошибку - C++
как на C++ записать СТРОКИ в обратном порядке?? Почти сделал. #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;stack&gt; #include...


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

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

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