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

Заполнить матрицу числами по диагонали

11.10.2015, 16:49. Показов 10411. Ответов 2
Метки нет (Все метки)

За данными числам n и m заполнить двумерный массив размером n × m числами от 1 до n × m "диагоналями", как показано в на рисунке:
1 2 4 7 10
3 5 8 11 13
6 9 12 14 15.

Добавлено через 4 минуты
Помогите пожалуйста, как создать матрицу знаю, а вот как заполнить числами, которые даны в задании не разбираюсь(
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.10.2015, 16:49
Ответы с готовыми решениями:

Заполнить матрицу 9x9 случайными числами. Отобразить матрицу симметрично относительно главной диагонали
Заполнить матрицу случайными числами. Отобразить матрицу симметрично относительно главной диагонали

Заполнить матрицу натуральными числами змейкой по диагонали
Помогите с задачей :( Входные данные Входная строка содержит числа N и M , разделённые пробелом ...

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

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

2
836 / 639 / 940
Регистрация: 26.06.2015
Сообщений: 1,409
11.10.2015, 20:33 2
Лучший ответ Сообщение было отмечено new1 как решение

Решение

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
#include <iostream>
 
 
int main(void){
    const int N = 3;
    const int M = 5;
    int mat[N][M];
 
    int i, j, row = 0, col = 0, n = 1;
    while(row <= (N - 1)){
        i = row;
        j = col;
 
        while((i < N) && (j >= 0))
            mat[i++][j--] = n++;
        
        if(col < (M - 1))
            ++col;
        else
            ++row;
    }
 
    for(i = 0; i < N; ++i){
        for(j = 0; j < M; ++j){
            std::cout.width(3);
            std::cout << mat[i][j];
        }
        std::cout << std::endl;
    }
    return 0;
}
2
0 / 0 / 0
Регистрация: 11.10.2015
Сообщений: 10
11.10.2015, 21:01  [ТС] 3
Спасибо большое за помощь) А суть этой програмки, что сначала мы заполняем, какая последовательность цикла? простите, еще новичек, не все понимаю(
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.10.2015, 21:01
Помогаю со студенческими работами здесь

Заполнить матрицу случайными числами. Отобразить мат-рицу симметрично относительно главной диагонали.
Помогите пожалуйста!Очень нужно! Как написать программу на DEV C++ ? Вот задание: Заполнить...

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

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

Заполнить матрицу заданного размера числами 1,2,3,4 так, чтобы по горизонтали, вертикали и диагонали не было одинаковых рядом стоящих чисел.
Заполнить матрицу заданного размера M(k,l) числами 1,2,3,4 так, чтобы по горизонтали, вертикали и...


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

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

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