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

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

Войти
Регистрация
Восстановить пароль
 
Павел1994
0 / 0 / 0
Регистрация: 22.01.2017
Сообщений: 1
#1

Заполнение матрицы по спирали! - C++

21.01.2013, 17:38. Просмотров 693. Ответов 0
Метки нет (Все метки)

Программа, которая заполняет квадратную матрицу порядка n натуральными числами 1, 2, 3, … n2, записывая их в нее «по спирали».
Например, для n=5 получаем следующую матрицу:
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
Вот есть программка ниже ток надо доделать что бы int const n=5; задавал я в командной строке. Пример:
введите 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
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <iostream>
#include <iomanip>
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <ctype.h>
#include <stdlib.h>
#include <string.h>
#include <iostream>
using namespace std;
 
int main()
{
 
int const n=5;
 int A[n][n];
 int i=1,j,k,p=n/2;
 for(k=1;k<=p;k++)/*Цикл по номеру витка*/
 {
 for (j=k-1;j<n-k+1;j++)
     A[k-1][j]=i++;/*Определение значений верхнего горизонтального столбца*/
 for (j=k;j<n-k+1;j++)
     A[j][n-k]=i++;/* --//-- По правому вертикальному столбцу*/
 for (j=n-k-1;j>=k-1;--j)
     A[n-k][j]=i++;/* --//-- по нижнему горизонтальному столбцу*/
 for (j=n-k-1;j>=k;j--)
     A[j][k-1]=i++;/* --//-- по левому вертикальному столбцу*/
 }
 if (n%2==1)
     A[p][p]=n*n;
 for(i=0;i<n;i++)
  for(j=0;j<n;j++)
  {
   printf(" %4d ",A[i][j]);
   if(j==n-1)
     printf("\n");
  }
 
    getche( );
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2013, 17:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Заполнение матрицы по спирали! (C++):

Заполнение матрицы по спирали - C++
Напишите программу, которая заполняет матрицу из N строк и M столбцов заполненную заданным способом: входные данные: 4 5 выходные...

Заполнение матрицы по спирали - C++
Заполнить матрицу 10х10 числами от 1 до 100 по порядку, начиная с верхнего левого угла. #include&lt;conio.h&gt; #include&lt;stdio.h&gt; ...

Заполнение матрицы по спирали - C++
Дано натуральное N (1&lt;=N&lt;=10). Заполнить матрицу порядка N*N целыми числами 0, 1, 2, 3, …, N^2–1 по спирали(по часовой стрелке). Важное...

Заполнение матрицы по спирали - C++
Здравствуйте! Помогите, пожалуйста, с задачей: Заполнить квадратную матрицу nxn последовательными целыми числами от 1 до n^2,...

Заполнение матрицы по спирали - C++
как заполнить матрицу ЛП, от левого верхнего угла по спирали: вправо - вниз - влево - вверх

Заполнение матрицы по спирали - C++
Привет всем, можете помочь пожалуйста: надо придумать алгоритм, написать код на С++ заполнения матрицы по контуру по часовой стрелке (т.е....

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

Подправить код, заполнение матрицы по спирали - C++
Ребята, не могу понять где ошибка. В общем т.к. новичок не знаю как именно переходить если одно логическое условие стало ложным, к другому....

Заполнение матрицы по спирали (из центра по часовой стрелке) - C++
Пользователь должен ввести размерность матрици!Матрица квадратная!А программа должна заполнить её числами по порядку 1 2 3 4 5 .... (из...

Заполнение матрицы по спирали: модифицировать имеющийся код - C++
Подскажите пожалуста, каким образом поменять цикл, чтобы заполнение началось с другого угла массива? #include &quot;stdafx.h&quot; #include...

Заполнение матрицы по спирали с использованием case - break - C++
Нужно заполнить матрицу по спирали при помощи case - break. Вот код : #include&lt;iostream&gt; #include&lt;Windows.h&gt; #include &quot;stdlib.h&quot; ...


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

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

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