0 / 0 / 1
Регистрация: 09.01.2018
Сообщений: 30
1

Поменять местами строки матрицы

08.04.2018, 17:12. Показов 2607. Ответов 3

Можете ли Вы пояснить мне словами, что в данной программе проверяет условие i+2<n1 в 32-й строке?

Задание:
Дан двумерный статический массив действительных чисел размером N1xN2. Поменять местами строки с номерами 0 и 2, 1 и 3, 4 и 6, 5 и 7 и т.д. (в данном случае, массив задан рамером 4х4)

C++
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include "stdafx.h"
#include < iostream >
#include < iomanip >
#include < cstdlib >
#include < ctime >
#include < algorithm >
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "rus");
    srand(time(NULL));
    const int n1 = 4;
    const int n2 = 4;
    float mass[n1][n2];
    cout << "Исходный массив:" << endl;
    for (int i = 0; i < n1; ++i){
        for (int u = 0; u < n2; ++u){
            mass[i][u] = rand() % 51;
            cout << setw(4) << mass[i][u];
        }
        cout << endl;
    }
 
    cout << endl;
    
    int temp;
    for (int i = 0; i< n1; i++)
    {
        for (int j = 0; j<n2; j++)
        {
            if (i + 2<n1)
            {
                temp = mass[i][j];
                mass[i][j] = mass[i + 2][j];
                mass[i + 2][j] = temp;
            }
        }
    }
 
    cout << endl;
    cout << "Преобразованный массив:" << endl;
    for (int i = 0; i < n1; ++i){
        for (int u = 0; u < n2; ++u){
            cout << setw(4) << mass[i][u];
        }
        cout << endl;
    }
 
    cin.get();
    return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.04.2018, 17:12
Ответы с готовыми решениями:

Поменять местами максимальный элемент каждой строки матрицы с первым элементом строки
Написать функцию, которая меняет местами максимальный элемент каждой строки матрицы С(5,5) с первым...

В функции, для каждой строки матрицы M[n][k], максимальный элемент поменять местами с первым элементом строки
В функции, для каждой строки матрицы M, максимальный элемент поменять местами с первым элементом...

Поменять строки матрицы местами
Всем привет. Учусь на первом курсе, по информатике задали задачу: Составить алгоритм: Поменять в...

Поменять местами строки матрицы
Дано матрицу 3*3.Поменять местами 1 і 3 строки.В С++.

3
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
08.04.2018, 17:17 2
Лучший ответ Сообщение было отмечено gaard9n как решение

Решение

Что нет выхода за границу массива по строкам. Правильнее условие первого цикла задать как i < n1 - 2.
1
0 / 0 / 1
Регистрация: 09.01.2018
Сообщений: 30
08.04.2018, 17:20  [ТС] 3
Цитата Сообщение от nmcf Посмотреть сообщение
Что нет выхода за границу массива по строкам. Правильнее условие первого цикла задать как i < n1 - 2.
Спасибо. Почему правильнее в виде i < n1 - 2?
0
7166 / 6141 / 2802
Регистрация: 14.04.2014
Сообщений: 26,462
08.04.2018, 17:35 4
Потому что оно для этого и предназначено.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.04.2018, 17:35
Помогаю со студенческими работами здесь

Поменять строки матрицы местами
Если в матрице найдутся две соседние строки, которые состоят из четных элементов, то поменять эти...

Поменять местами 2 и 4 строки матрицы
Нужна ваша помощь в написании программы С++, если не сложно.

Поменять местами строки матрицы
Помогите, пожалуйста. Нужно поменять строки матрицы следующим образом: первую строку с последней,...

Поменять строки матрицы местами
нужно поменять строки в матрице. первую со второй, третью с четвёртой, пятую с шестой и т.д. ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru