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

Удалить элементы главной диагонали - C++

Восстановить пароль Регистрация
 
ZaAz
0 / 0 / 0
Регистрация: 25.11.2015
Сообщений: 18
10.11.2016, 21:35     Удалить элементы главной диагонали #1
Напишите программу по обработке массива, как объекта созданного Вами класса «Массив». Дана вещественная квадратная матрица порядка N. Удалить из матрицы элементы главной диагонали. Главное в программе использование классов.
Буду благодарен за ответ.

Добавлено через 6 часов 36 минут
Есть уже код, но нужно добавить класс
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
#include "stdafx.h"
#include <iostream>
using namespace std;
void input(int** matrix, int n) {
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++)
            cin >> (*(*(matrix + i) + j));
    }
}
void output(int** matrix, int n) {
        for (int i = 0; i < n; i++)
        {
            for (int j = 0; j < n; j++)
                cout << *(*(matrix + i) + j) << " ";
            cout << endl;
        }
    }
void del(int** matrix, int n) {
    for (int i = 0; i < n; i++) {
            *(*(matrix + i) + i) = 0;
    }
        cout << endl;
    
}
int main()
    
{
 
    int n;
    cout << "N="; //ввод количества строк
    cin >> n;
    int** matrix = new int*[n];
    for (int i = 0; i < n; i++)
        matrix[i] = new int[n];
    cout << "Input matrix \n";
    input(matrix, n);
    output(matrix, n);
    del(matrix, n);
    output(matrix, n);
    system("pause");
    return 0;
}
Добавлено через 24 минуты
Вот сделал, кто может проверить, правильно ли. И есть ли варианты удалить диагональ полностью, а не заменять на 0?

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>
using namespace std;
class Array
{
private:
    int** matrix;
    int n;
public:
    void del(int** matrix, int n) {
        for (int i = 0; i < n; i++) {
            *(*(matrix + i) + i) = 0;
        }
        cout << endl;
    }
    void output(int** matrix, int n) {
        for (int i = 0; i < n; i++)
        {
            for (int j = 0; j < n; j++)
                cout << *(*(matrix + i) + j) << " ";
            cout << endl;
        }
    }
    void input(int** matrix, int n) {
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++)
                cin >> (*(*(matrix + i) + j));
        }
    }
};
 
 
 
int main()
    
{
 
    int n;
    cout << "N="; //ввод количества строк
    cin >> n;
    int** matrix = new int*[n];
    for (int i = 0; i < n; i++)
        matrix[i] = new int[n];
    Array objArray;
    cout << "Input matrix \n";
    objArray.input(matrix,n);
    objArray.output(matrix, n);
    objArray.del(matrix, n);
    objArray.output(matrix, n);
    system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2016, 21:35     Удалить элементы главной диагонали
Посмотрите здесь:

Элементы главной диагонали C++
Заменить элементы главной и побочной диагоналей матрицы на минимальный элемент ниже главной диагонали C++
Сохранить все нулевые элементы, размещенные на главной диагонали и в верхней половине области выше диагонали C++
Удалить элементы главной диагонали C++
C++ Удалить из матрицы элементы главной диагонали
C++ Сохранить все нулевые элементы, размещенные ниже главной диагонали на нечетных строках а выше главной в четных
C++ Заменить элементы главной диагонали матрицы нулями и найти максимальный элемент ниже побочной диагонали
Обнулить элементы матрицы, лежащие одновременно выше главной диагонали и ниже побочной диагонали C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему

Метки
классы, массивы, матрица
Опции темы

Текущее время: 07:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru