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

Заполнить матрицу из центра по спирали - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
Orest_raiter
3 / 3 / 0
Регистрация: 11.02.2012
Сообщений: 40
16.10.2012, 20:50     Заполнить матрицу из центра по спирали #1
Пользователь должен ввести размерность матрици!Матрица квадратная!А программа должна заполнить её числами по порядку 1 2 3 4 5 .... (из середины),как змейка, по часовой стрелке
Вот пример, чтоб было ясно
Код
37 38 39 40 41 42 43
36 17 18 19 20 21 44
35 16  5  6  7 22 45
34 15  4  1  8 23 46
33 14  3  2  9 24 47
32 13 12 11 10 25 48
31 30 29 28 27 26 49
(но матрица чтобы была квадратная и 1 посредине)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2012, 20:50     Заполнить матрицу из центра по спирали
Посмотрите здесь:

(CИ)Заполнить матрицу ЛП, от центра по спирали: влево - вниз - вправо - вверх. C++
C++ Текст записывается в квадратную матрицу, а затем прочитывается по спирали, начиная с центра
Заполнить квадратную матрицу размером N x N по спирали C++
C++ Заполнить массив 3х3 числами по возрастанию, по спирали начиная с центра
C++ Заполнить квадратную матрицу от левого верхнего угла по спирали
C++ Заполнить квадратную матрицу по спирали по часовой стрелке
C++ Заполнить квадратную матрицу натуральными числами по спирали

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Orest_raiter
3 / 3 / 0
Регистрация: 11.02.2012
Сообщений: 40
20.10.2012, 18:32  [ТС]     Заполнить матрицу из центра по спирали #2
что не можете помоч?
Sapiuntop
0 / 0 / 0
Регистрация: 22.09.2012
Сообщений: 9
20.03.2013, 01:51     Заполнить матрицу из центра по спирали #3
Может кому то нужно:
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
41
42
43
44
45
46
47
48
49
50
51
#include "stdafx.h"
#include <conio.h>
#include <stdio.h>
#define N 9
using namespace System;
 
int main()
{
    
    int spiral[N][N];
    int i,j,k,temp,num=N*N,z;
        for(k=N; k>N/2;k--) 
        {      
            temp = k-1;
            for(i=temp;i>=z+1;i--)
            {
                spiral[i][temp]=num;
                num--;
            }
            for(j=temp;j>=z+1;j--)  
            {
                spiral[z][j]=num;
                num--;
            }
            //
            for(i=z;i<temp;i++)
            {
                spiral[i][z]=num;
                num--;
            }
            for(j=z;j<temp;j++)
            {
                spiral[temp][j]=num;
                num--;
            }
            z++;
        }
        
        if(N%2) 
        {
            spiral[N/2][N/2]=num;
        }
 
        for(i=0;i<N;i++)
        {     
            for(j=0;j<N;j++) printf("%3d",spiral[i][j]);
            printf("\n");
        }
 
        getch();
}
Yandex
Объявления
20.03.2013, 01:51     Заполнить матрицу из центра по спирали
Ответ Создать тему
Опции темы

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