Top.Mail.Ru
Ответы

Треугольная матрица C++

Сделай треугольную матрицу,над главной диагональю должны быть нули,а под ней должны быть обычные цифры.Используете также библиотеку using namespace std;

По дате
По рейтингу
Аватар пользователя
Оракул

ChatGPT 3.5 отвечает:

Для создания треугольной матрицы с нулями над главной диагональю и обычными цифрами под ней в C++ с использованием стандартной библиотеки можно написать следующий код:

1234567891011121314151617181920212223242526272829
 #include <iostream> 
#include <vector> 
 
using namespace std; 
 
int main() { 
    int n = 5; // Размер матрицы (пример для матрицы 5x5) 
 
    // Создаем двумерный вектор для хранения матрицы 
    vector<vector<int>> matrix(n, vector<int>(n, 0)); 
 
    // Заполняем матрицу 
    for (int i = 0; i < n; ++i) { 
        for (int j = i + 1; j < n; ++j) { 
            matrix[i][j] = j - i; // Значения под главной диагональю 
        } 
    } 
 
    // Выводим матрицу на экран 
    for (int i = 0; i < n; ++i) { 
        for (int j = 0; j < n; ++j) { 
            cout << matrix[i][j] << " "; 
        } 
        cout << endl; 
    } 
 
    return 0; 
} 
 

В этом коде:

Мы используем двумерный вектор matrix, чтобы хранить нашу матрицу размером n x n.
Внешний цикл i проходит по строкам матрицы.
Внутренний цикл j заполняет элементы под главной диагональю значением j - i.
Элементы над главной диагональю остаются равными 0, так как мы инициализируем матрицу нулями.
Этот код создаст треугольную матрицу следующего вида (для n = 5):

123456
 0 1 2 3 4  
0 0 1 2 3  
0 0 0 1 2  
0 0 0 0 1  
0 0 0 0 0  
 

Вы можете изменить значение n в переменной n для создания матрицы нужного вам размера.

Аватар пользователя
Мыслитель
12345678910111213141516171819202122232425262728
 #include <iostream> 
using namespace std; 
 
int main() { 
    const int n = 5; // Размер матрицы (например, 5x5) 
    int matrix[n][n]; 
 
    // Заполнение матрицы 
    for (int i = 0; i < n; i++) { 
        for (int j = 0; j < n; j++) { 
            if (j > i) { 
                matrix[i][j] = 0; // Нули над главной диагональю 
            } else { 
                matrix[i][j] = rand() % 10; // Случайные числа под и на главной диагонали 
            } 
        } 
    } 
 
    // Вывод матрицы 
    for (int i = 0; i < n; i++) { 
        for (int j = 0; j < n; j++) { 
            cout << matrix[i][j] << " "; 
        } 
        cout << endl; 
    } 
 
    return 0; 
}