3 / 3 / 0
Регистрация: 11.02.2012
Сообщений: 42
1

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

16.10.2012, 20:50. Показов 4630. Ответов 2
Метки нет (Все метки)

Пользователь должен ввести размерность матрици!Матрица квадратная!А программа должна заполнить её числами по порядку 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 посредине)
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.10.2012, 20:50
Ответы с готовыми решениями:

(CИ)Заполнить матрицу ЛП, от центра по спирали: влево - вниз - вправо - вверх.
(СИ)Заполнить матрицу ЛП, от центра по спирали: влево - вниз - вправо - вверх.

Заполнить массив 3х3 числами по возрастанию, по спирали начиная с центра
Заполнить массив 3х3 числами по возрастанию, по спирали начиная с центра. Ошибка в строчке int...

Заполнить массив 3х3 числами по возрастанию, по спирали начиная с центра
Заполнить массив 3х3 числами по возрастанию, по спирали начиная с центра. 7 8 9 6 1 2 5 4 3...

Текст записывается в квадратную матрицу, а затем прочитывается по спирали, начиная с центра
Всем доброго времени суток! Кому не сложно, взгляните, пожалуйста. Дан текстовый файл,...

2
3 / 3 / 0
Регистрация: 11.02.2012
Сообщений: 42
20.10.2012, 18:32  [ТС] 2
что не можете помоч?
0
1 / 1 / 2
Регистрация: 22.09.2012
Сообщений: 9
20.03.2013, 01:51 3
Лучший ответ Сообщение было отмечено Orest_raiter как решение

Решение

Может кому то нужно:
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();
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.03.2013, 01:51
Помогаю со студенческими работами здесь

Заполнить матрицу по спирали
Заполнить матрицу, от центра по спирали: вниз - влево - вверх - вправо. Размерность матрицы должна...

Заполнить матрицу по спирали

Заполнить матрицу по спирали
Через ранд формируются элементы массива размер n^2 .Нужно по спирали заполнить матрицу n*n по...

Заполнить матрицу по спирали
Помогите заполнить матрицу по спирали, но нужно это сделать при помощи функции с заданным...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru