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

Заполнить массив по диагоналям - C++

Восстановить пароль Регистрация
 
SirArthur
1 / 1 / 0
Регистрация: 07.11.2013
Сообщений: 22
13.12.2013, 21:08     Заполнить массив по диагоналям #1
Всем привет, пожалуйста помогите, учитель задал задачу не как не могу сделать ее, по форуму искал нету вот условие
Даны числа n и m. Создайте массив A[n][m] и заполните его, как показано на примере.
n=4
m=6
Результат
0 1 3 6 10 14
2 4 7 11 15 18
5 8 12 16 19 21
9 13 17 20 22 23
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
13.12.2013, 21:15     Заполнить массив по диагоналям #2
а почему в вопросе написано заполнить по диагонали?
SirArthur
1 / 1 / 0
Регистрация: 07.11.2013
Сообщений: 22
13.12.2013, 21:16  [ТС]     Заполнить массив по диагоналям #3
А это разве не по диагоналям?
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
13.12.2013, 21:21     Заполнить массив по диагоналям #4
n=4
m=6
Результат
0 1 3 6 10 14
2 4 7 11 15 18
5 8 12 16 19 21
9 13 17 20 22 23

int mas[4][6];

//заполняем первую строку
mas[0][0] = 0;
mas[0][1] = 1;
mas[0][2] = 3;
.
.
mas[0][5] = 14;

//заполняем вторую
mas[1][0] = 2;
mas[1][1] = 4;
mas[1][2] = 7;
.
.
mas[1][5] = 18;

//заполняем третью
mas[2][0] = 5;
mas[2][1] = 8;
mas[2][2] = 12;
.
.
mas[2][5] = 21

//ну и так далее
Если найти зависимость, то можно циклом заполнить
SirArthur
1 / 1 / 0
Регистрация: 07.11.2013
Сообщений: 22
13.12.2013, 21:22  [ТС]     Заполнить массив по диагоналям #5
Так мне и в программе нужно это сделать, я так тоже могу, нужно вводить n и m с клавиатуры, и он должен выводить матрицу..
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
13.12.2013, 21:27     Заполнить массив по диагоналям #6
Цитата Сообщение от SirArthur Посмотреть сообщение
А это разве не по диагоналям?
всё я понял по каким диагоналям, просто они в противоположную сторону

Добавлено через 4 минуты
Заполнение массива по диагонали
вот уже есть тема там наподобие, только по другим диагоналям
SirArthur
1 / 1 / 0
Регистрация: 07.11.2013
Сообщений: 22
13.12.2013, 21:37  [ТС]     Заполнить массив по диагоналям #7
А можно просто код?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.12.2013, 07:22     Заполнить массив по диагоналям
Еще ссылки по теме:

заполнить массив C++
Получить матрицу с единицами по диагоналям C++
C++ Заполнить квадрат одинаковыми значениями по диагоналям

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

Или воспользуйтесь поиском по форуму:
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
14.12.2013, 07:22     Заполнить массив по диагоналям #8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;
 
 int main()
 {
     int a[100][100];
     int n, m, t=0, i, j;
     cin>>n>>m;
     for(j=0; j<m; j++)
         for(i=0; j-i>=0 && i<n; i++)
             a[i][j-i]=t++;
     for(i=1; i<n; i++)
         for(j=0; j+i<n && m-j-1>=0; j++)
             a[i+j][m-1-j]=t++;
     for(i=0; i<n; i++)
     {
         for(j=0; j<m; j++)
             cout<<a[i][j]<<" ";
         cout<<endl;
     }
     return 0;
 }
Yandex
Объявления
14.12.2013, 07:22     Заполнить массив по диагоналям
Ответ Создать тему
Опции темы

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