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

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

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

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

12.01.2009, 22:08. Просмотров 2925. Ответов 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, то матрица должна получиться такая: -Вот вопрос.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.01.2009, 22:08     Сформировать квадратную матрицу порядка N по заданному образцу
Посмотрите здесь:

Сформировать квадратную матрицу порядка n по заданному образцу C++
C++ Сформировать квадратную матрицу порядка n по заданному образцу
C++ Сформировать квадратную матрицу порядка n по заданному образцу
C++ Сформировать квадратную матрицу порядка n по заданному образцу
C++ Сформировать квадратную матрицу порядка n по заданному образцу
Сформировать квадратную матрицу порядка n по заданному образцу c++ C++
Сформировать квадратную матрицу порядка n по заданному образцу C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
мистер х
20 / 20 / 2
Регистрация: 11.01.2009
Сообщений: 110
12.01.2009, 22:21     Сформировать квадратную матрицу порядка N по заданному образцу #2
нет если =5,то
11111
11111
11111
11111
11111
Stager
1 / 1 / 0
Регистрация: 14.12.2008
Сообщений: 13
12.01.2009, 22:41  [ТС]     Сформировать квадратную матрицу порядка N по заданному образцу #3
Почему?
мистер х
20 / 20 / 2
Регистрация: 11.01.2009
Сообщений: 110
12.01.2009, 22:48     Сформировать квадратную матрицу порядка N по заданному образцу #4
не то...
я имел ввиду что там 5*5 а не 5*9
а как дальше я тут не знаю
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
12.01.2009, 23:15     Сформировать квадратную матрицу порядка N по заданному образцу #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 секунд
Но результат от этого не меняется!
Stager
1 / 1 / 0
Регистрация: 14.12.2008
Сообщений: 13
13.01.2009, 10:46  [ТС]     Сформировать квадратную матрицу порядка N по заданному образцу #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 надо вводить самому.
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
13.01.2009, 16:52     Сформировать квадратную матрицу порядка N по заданному образцу #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;
}
Stager
1 / 1 / 0
Регистрация: 14.12.2008
Сообщений: 13
14.01.2009, 16:51  [ТС]     Сформировать квадратную матрицу порядка N по заданному образцу #8
Большое Спасибо manfeese, прога работает!
Вот тока я не разобрал, как можно сделать так, чтобы не нужно было писать значение N в программе, а можно было её ввести при запуске.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2011, 13:45     Сформировать квадратную матрицу порядка N по заданному образцу
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
krestina
0 / 0 / 0
Регистрация: 13.05.2011
Сообщений: 67
14.05.2011, 13:45     Сформировать квадратную матрицу порядка N по заданному образцу #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
Yandex
Объявления
14.05.2011, 13:45     Сформировать квадратную матрицу порядка N по заданному образцу
Ответ Создать тему
Опции темы

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