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

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

09.12.2021, 20:20. Показов 462. Ответов 2

Author24 — интернет-сервис помощи студентам
Помогите дописать программу. На данном этапе она заполняет матрицу псевдо-случайными числами, и выводит элементы главной диагонали на экран.
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
#include <iostream>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "RUS");
    const int RAWS = 6;
    const int COLS = 6;
    int arr[RAWS][COLS];
    for (int i = 0; i < RAWS; i++) 
    {
        for (int j = 0; j < COLS; j++)
        {
            arr[i][j] = rand() % 10;
            cout << arr[i][j] << " ";
        }
        cout << endl;
    }
    cout << "Элементы главной диагонали -> ";
    for (int i = 0; i < RAWS; i++) 
    {
        for (int j = 0; j < COLS; j++) 
        {
            if (i == j) cout << arr[i][j] << " ";
        }
    }
}
Желательно с пояснениями, чтобы можно было понять + объяснить другому человеку. Спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.12.2021, 20:20
Ответы с готовыми решениями:

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

Задана матрица целых чисел.Выполнить сортировку элементов,расположенных на главной диагонали
:cry:

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

Задана матрица целых чисел. Выполнить сортировку элементов в каждом столбце матрицы по возрастанию
Плиз)))) Задана матрица целых чисел. Выполнить сортировку элементов в каждом столбце матрицы по...

Задана квадратная матрица целых чисел, вычислить сумму элементов, расположенных под главной диагональю
Помогите пожалуйста решить. Нельзя использовать string, векторы, scanf, printf Задана квадратная...

2
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
09.12.2021, 20:27 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
#include <iostream>
#include <utility>
#include <cstdlib>
#include <ctime>
using namespace std;
 
int main()
{
    srand((int)time(0));
    int n;
    cout << "n="; cin >> n;
    
      int **a = new int*[n];
    for (int i = 0; i < n; i++)
         a[i]=new int[n];
    
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            a[i][j]=rand()%9+ 1;
            cout << a[i][j] << " ";
        }
    cout << "\n";
    }
    cout << "\n";
    
    for (int i=0; i<n-1; i++)    
    for (int j=0; j<n-i-1; j++)        
      if (a[j][j] > a[j+1][j+1]) 
      swap(a[j][j], a[j+1][j+1]);
      
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)        
            cout << a[i][j] << " ";        
    cout << "\n";
    }  
 
    for (int i = 0; i < n; i++)
    delete[]a[i];
    delete[]a;
system("pause");
return 0;
}
p.s. не знаю, что тут пояснять, если что-то непонятно спрашивайте
0
0 / 0 / 0
Регистрация: 03.01.2020
Сообщений: 17
25.12.2021, 03:02  [ТС] 3
Yetty, Здравствуйте, прошу прощения за то, что только спустя столько времени у меня возник вопрос, но не могли бы Вы помочь мне дописать код, который я взял у Вас и немного переделал под заданные мне условия. Вся проблема заключается в том, что получившийся у меня код, не может отсортировать элементы не квадратной матрицы, но он должен. Я никак не могу сообразить, что необходимо сделать для этого. Надеюсь на Вашу помощь. Заранее спасибо.
P.S. Получившийся у меня код прилагаю.
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
#include <iostream>
#include <cmath>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "rus");
    int i, j, m, n, a[10][10];
    cout << "Введите кол-во строк: " << endl;
    cin >> n;
    if (n == 0) 
    {
        cout << "Ошибка, вы ввели неверное кол-во строк " << endl;
        return 0;
    }
    else
    {
        cout << "Введите кол-во столбцов: " << endl;
    }
    cin >> m;
    if (m == 0)
    {
        cout << "Ошибка, вы ввели неверное кол-во столбцов ";
        return 0;
    }
    else
    {
        cout << "Введите элементы матрицы: " << endl;
    }
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            cin >> a[i][j];
        }
        cout << endl;
    }
    cout << "Исходная матрица: " << endl;
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < m; j++)
        {
            cout << a[i][j] << " \t ";
        }
        cout << endl;
    }
    for (int i = 0; i < n - 1; i++) 
    {
        for (int j = 0; j < n - i - 1; j++)
            if (a[j][j] > a[j + 1][j + 1]) 
            {
                swap(a[j][j], a[j + 1][j + 1]);
            }
    }
    cout << "Отсортированная по возрастанию матрица: " << endl;
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            cout << a[i][j] << " \t ";
        }
        cout << endl;
    }
    return 0;
}
0
25.12.2021, 03:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.12.2021, 03:02
Помогаю со студенческими работами здесь

Задана матрица целых чисел. Выполнить сортировку элементов по возрастанию в каждом столбце матрицы
#include

Задана матрица целых чисел. Вычислить сумму элементов, расположенных над главной диагональю
Задана матрица целых чисел. Вычислить сумму элементов, расположенных над главной диагональю. ...

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

Выполнить сортировку элементов двумерного массива, расположенных на главной диагонали
1. Выполнить сортировку элементов двумерного массива, расположенных на главной диагонали. Результат...

Дана матрица целых чисел размером 4x4. Определите сумму элементов расположенных выше главной диагонали
Результат вывести на экран


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

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

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