85 / 29 / 16
Регистрация: 01.06.2019
Сообщений: 608
1

Зеркальное отображение двухмерного массива

30.05.2022, 16:14. Показов 436. Ответов 2
Метки с++ (Все метки)

Создать двухмерный массив чисел размером NxN. Сделать зеркальное отображение массива относительно:
1. Главной диагонали
2. Побочной диагонали

Подскажите как сделать зеркальное отображение:
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
53
54
int main()
{
    setlocale(LC_ALL, "rus");
    srand(static_cast<unsigned>(time(nullptr)));
 
    int N = 5;
   
    
    int** arr = new int* [N];
    for (int i = 0; i < N; i++)
    {
        arr[i] = new int[N];
    }
 
    for (int i = 0; i < N; i++)
    {
        for (int j = 0; j < N; j++)
        {
            arr[i][j] = rand() % 51;
        }
    }
 
    for (int i = 0; i < N; i++)
    {
        for (int j = 0; j < N; j++)
        {
            cout << arr[i][j] << "\t";
        }
        cout << endl;
    }
    cout << endl;
 
    cout << "Зеркальное отображение относительно главной диагонали: " << endl;
    for (int i = 3; i < N; i++)
    {
        for (int j = 0; j < N; j++)
        {
            cout << arr[i][j] << "\t";
        }
        cout << endl;
    }
    cout << endl;
 
 
    for (int i = 0; i < N; i++)
    {
        delete[] arr[i];
    }
    
    delete[] arr; 
 
 
    return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.05.2022, 16:14
Ответы с готовыми решениями:

Зеркальное отображение массива
Всем привет!не могу сообразить как переписать старый массив в новый, отобразить значения массива в...

зеркальное отображение матрицы
Здравствуйте, допустим у нас есть двумерный массив чисел 3 4 5 6 4 2 9 8 1 мне нужно...

Зеркальное отображение матрицы
Доброго времени суток! У меня проблема с зеркальным отображением матрицы. Задача состоит в том,...

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

Выполнить зеркальное отображение предложения
Дано предложение. Выполнить его зеркальное отображение. (например, было -«мама мыла раму», станет –...

2
570 / 311 / 161
Регистрация: 19.12.2016
Сообщений: 1,258
30.05.2022, 16:36 2
Лучший ответ Сообщение было отмечено BaLahmuT как решение

Решение

Если поискать в нете, то все есть. Сам не решал, примеры нашел и в ваш код подставил, заняло 5-10 мин.
Кликните здесь для просмотра всего текста
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int main()
{
    srand(static_cast<unsigned>(time(nullptr)));
 
    int N = 5;
   
    
    int** arr = new int* [N];
    for (int i = 0; i < N; i++)
    {
        arr[i] = new int[N];
    }
 
    for (int i = 0; i < N; i++)
    {
        for (int j = 0; j < N; j++)
        {
            arr[i][j] = rand() % 51;
        }
    }
 
    for (int i = 0; i < N; i++)
    {
        for (int j = 0; j < N; j++)
        {
            cout << arr[i][j] << "\t";
        }
        cout << endl;
    }
    cout << endl;
 
    cout << "Зеркальное отображение относительно главной диагонали: " << endl;
    int p;
    for(int i=0;i< N;i++)
    for(int j=i;j< N;j++)
    {
        p=arr[i][j];
        arr[i][j]=arr[j][i];
        arr[j][i]=p;
    }
    for (int i = 0; i < N; i++)
    {
        for (int j = 0; j < N; j++)
        {
            cout << arr[i][j] << "\t";
        }
        cout << endl;
    }
    cout << endl;
    cout << "Зеркальное отображение относительно побочной диагонали: " << endl;
    for (int i = 0; i < N-1; i++)
    {
        for (int j = 0; j < N-i; j++)
        {
            p  = arr[i][j];
            arr[i][j] = arr[N-1-j][N-1-i];
            arr[N-1-j][N-1-i] = p;
        }
    }
    
    for (int i = 0; i < N; i++)
    {
        for (int j = 0; j < N; j++)
        {
            cout << arr[i][j] << "\t";
        }
        cout << endl;
    }
    cout << endl;
    
    for (int i = 0; i < N; i++)
    {
        delete[] arr[i];
    }
    
    delete[] arr; 
 
 
    return 0;
}
1
5233 / 2887 / 1208
Регистрация: 07.02.2019
Сообщений: 7,285
30.05.2022, 16:42 3
del
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.05.2022, 16:42
Помогаю со студенческими работами здесь

Зеркальное отображение вводимого числа
Сам новичок в С++, только начал в инсте проходить. Дали задание, а я не могу понять, как его...

Зеркальное отображение битов в байте
Всем привет, нужно сделать так, чтобы биты в байте отобразились зеркально, а затем вывести эту...

Осуществить зеркальное отображение байта (unsigned char b)
Проблема в следующем (12 строка), если использовать cin то в двоичной системе выводит не правильно,...

Осуществить зеркальное отображение байта (unsigned char b)
То есть у нас есть, допустим: 00011001, надо получить 10011000. Как это сделать? #include...

Заменить каждое слово во входном файле на его зеркальное отображение
Напишите программу, которая принимает на вход два параметра: имя входного файла, имя выходного...


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

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

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