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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 23, средняя оценка - 4.70
Stager
1 / 1 / 0
Регистрация: 14.12.2008
Сообщений: 13
#1

Сформировать квадратную матрицу порядка N по заданному образцу - C++

12.01.2009, 22:08. Просмотров 2991. Ответов 8
Метки нет (Все метки)

Подскажите, пожалуйста один момент в условии.
Вот задачка:
Сформировать квадратную матрицу порядка N по заданному образцу:
| 1 1 1 ... 1 1 1 |
| 0 1 1 ... 1 1 0 |
| 0 0 1 ... 1 0 |
| .................. |
| 2 3 4 ... n-1 n 0 |
| 1 2 3 ... n-2 n-1 n |
Вот к примеру, если N=5, то матрица должна получиться такая:
1 1 1 1 1
0 1 1 1 0
0 0 1 0 0
0 0 0 0 0
5 0 0 0 0
4 5 0 0 0
3 4 5 0 0
2 3 4 5 0
1 2 3 4 5

Добавлено через 51 минуту 53 секунды
Забыл вопросительный знак добавить.
Вот к примеру, если N=5, то матрица должна получиться такая: -Вот вопрос.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.01.2009, 22:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сформировать квадратную матрицу порядка N по заданному образцу (C++):

Сформировать квадратную матрицу порядка n по заданному образцу - C++
Сформировать квадратную матрицу порядка n по заданному образцу: n 0 0 … 0 0 0 0 n-1 0 … 0 0 0 0 ...

Сформировать квадратную матрицу порядка n по заданному образцу c++ - C++
0 0 0 … 0 0 1 0 0 0 … 0 2 0 0 0 0 … 3 0 0 ………………………….. 0 n-1 0 …...

Сформировать квадратную матрицу порядка n по заданному образцу - C++
Сформировать квадратную матрицу порядка n по заданному образцу 0 0 0 … 0 0 0 1 0 … 0 0 0 0 2 ...

Сформировать квадратную матрицу порядка n по заданному образцу - C++
всем привет! помогите пожалуйста решить задачу на C нужно сформировать квадратную матрицу порядка n по заданному образцу: 1 2 3 ....

Сформировать квадратную матрицу порядка n по заданному образцу - C++
Сформировать квадратную матрицу порядка n по заданному образцу: 1 2 3 … n-2 n-1 n 0 1 2 … n-3 n-2 n-1 0 ...

Сформировать квадратную матрицу порядка n по заданному образцу - C++
Трудности при написании программы. Сформировать квадратную матрицу порядка n по заданному образцу (смотреть вложение).

8
мистер х
20 / 20 / 2
Регистрация: 11.01.2009
Сообщений: 110
12.01.2009, 22:21 #2
нет если =5,то
11111
11111
11111
11111
11111
0
Stager
1 / 1 / 0
Регистрация: 14.12.2008
Сообщений: 13
12.01.2009, 22:41  [ТС] #3
Почему?
0
мистер х
20 / 20 / 2
Регистрация: 11.01.2009
Сообщений: 110
12.01.2009, 22:48 #4
не то...
я имел ввиду что там 5*5 а не 5*9
а как дальше я тут не знаю
0
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
12.01.2009, 23:15 #5
Интересная задачка!
Сразу конечно матрицу заполнить тяжело, поэтому пришлось потрудиться двумя циклами заполнения.

Вот что у меня получилось!
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
#include <iostream.h>
#include <conio.h>
 
int main()
{
    const n=5;
 
    const k=(n+1)/2+1;
    const m=n+k;
    int A[m][n]={0};
    // Заполнение единицами
    for (int i=0; i<n/2+1; i++)
       for (int j=0+i; j<n-i; j++)
           A[i][j]=1;
    // Заполнение числами
    for (int i=k; i<m; i++)
       for (int j=0; j<=i-k; j++)
           A[i][j]=m-i+j;
    // Вывод матрицы
    for (int i=0; i<m; i++){
      for (int j=0; j<n; j++)
         cout << A[i][j] << " ";
      cout << "\n";
    }
    getch();
    return 0;
}
Добавлено через 2 минуты 0 секунд
12 строку лучше переписать так (для ясности)
C++
1
for (int i=0; i<k; i++)
Добавлено через 1 минуту 12 секунд
Но результат от этого не меняется!
0
Stager
1 / 1 / 0
Регистрация: 14.12.2008
Сообщений: 13
13.01.2009, 10:46  [ТС] #6
Спасибо. Вот только я неправильно пример привёл: не так
1 1 1 1 1
0 1 1 1 0
0 0 1 0 0
0 0 0 0 0
5 0 0 0 0
4 5 0 0 0
3 4 5 0 0
2 3 4 5 0
1 2 3 4 5
а так:
11111
01110
00100
23450
12345
и ещё N надо вводить самому.
0
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
13.01.2009, 16:52 #7
Цитата Сообщение от Stager Посмотреть сообщение
11111
01110
00100
23450
12345
Для такого варианта я написал! но я не уверен для остальных... Условие не совсем корректное
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
#include <iostream.h>
#include <conio.h>
 
int main()
{
    const n=5;
    const k=(n+1)/2;
 
    int A[n][n]={0};
    // Заполнение единицами
    for (int i=0; i<k; i++)
       for (int j=0+i; j<n-i; j++)
           A[i][j]=1;
    // Заполнение числами
    for (int i=k; i<n; i++)
       for (int j=0; j<n; j++)
           A[i][j]=(n-i+j)%(n+1);
    // Вывод матрицы
    for (int i=0; i<n; i++){
      for (int j=0; j<n; j++)
         cout << A[i][j] << " ";
      cout << "\n";
    }
 
    getch();
    return 0;
}
0
Stager
1 / 1 / 0
Регистрация: 14.12.2008
Сообщений: 13
14.01.2009, 16:51  [ТС] #8
Большое Спасибо manfeese, прога работает!
Вот тока я не разобрал, как можно сделать так, чтобы не нужно было писать значение N в программе, а можно было её ввести при запуске.
0
krestina
0 / 0 / 0
Регистрация: 13.05.2011
Сообщений: 67
14.05.2011, 13:45 #9
А может кто поможет квадратную матрицу сформировать такого образца?

1 1 1 1 1
1 0 0 0 1
1 0 0 0 1
1 0 0 0 1
1 1 1 1 1
0
14.05.2011, 13:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2011, 13:45
Привет! Вот еще темы с ответами:

Сформировать квадратную матрицу порядка n по заданному образцу - C++
Сформировать квадратную матрицу порядка n по заданному образцу. Добавлено через 5 минут 1 1 1 ... 1 1 1 1 0 0 ... 0 0 1 1...

Сформировать квадратную матрицу порядка n по заданному образцу - C++
1 1 1 ... 1 1 1 2 2 2 ... 2 2 0 3 3 3 ... 3 0 0 ... ... ... ... ... ... ... n-1 n-1 0 ... 0 0 0 ...

Сформировать квадратную матрицу порядка n по заданному образцу на с++ - C++
вот на паскале написал. Const nmax=20; Var A:array of integer; i,j,n:byte; Begin Repeat write('vvedite N='); ...

Сформировать квадратную матрицу порядка n по заданному образцу - C++
1 1 1 … 1 1 1 2 2 2 … 2 2 0 3 3 3 … 3 0 0 ………………………….. n-1 n-1 0 …...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru