Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 13.03.2013
Сообщений: 49
1

Заполнить двумерный массив указанного размера последовательными натуральными числами, двигаясь от верхнего левого элемента вправо и далее по спирали

22.03.2014, 14:23. Показов 2213. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Заполнить двумерный массив указанного размера последовательными натуральными числами, двигаясь от верхнего левого элемента вправо и далее по спирали.

Пример заполнения для массива 3х3
123
894
765
Пользователь должен вводить размеры N x N матрицы
У меня в программе неверно для n, отличного от 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
static void Main()
        {         
            int i = 0, n = 3, l = 1, j = 0;
            int[,] mas1 = new int[n, n];
 
            for (i = 0; i < n; i++)
            {
                mas1[j, i] = l;
                l++;
            }
 
            for (i = 1; i < n; i++)
            {
                mas1[i, n - 1] = l;
                l++;
            }
 
            for (i = n - 2; i >= 0; i--)
            {
                mas1[n - 1, i] = l;
                l++;
            }
 
            for (i = 0; i <= 1; i++)
            {
                mas1[n - 2, i] = l;
                l++;
            }
            for (i = 0; i < n; i++)
            {
                for (int k = 0; k < n; k++)
                {
                    Console.Write("{0} ", mas1[i, k]);
 
                }
                Console.WriteLine();
            }
             
             
             Console.Read();
        }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.03.2014, 14:23
Ответы с готовыми решениями:

Заполнить двумерный массив произвольного размера последовательными числами по спирали
Здравствуйте! Нужна ваша помощь. Прошу, код должен быть предельно простым. Заполнить двумерный...

Заполнить массив последовательными натуральными числами, идущими по спирали
привет всем не могу написать программу, помогите пожалуйста можно просто алгоритм с...

Заполнить массив числами от 1 до n^2, расположенными по спирали, начиная с левого верхнего угла и продвигаясь по часовой стрелке
Помогите построить задачку на двумерный массив! Заполнить квадратную таблицу размером n*n...

Заполнить матрицу ЛП от левого верхнего угла по спирали : вправо-вниз-влево-вверх
#include &lt;stdio.h&gt; #define S 9 int Ar; int main (void){ short l, r; short r1,r2; ...

1
162 / 154 / 73
Регистрация: 03.03.2014
Сообщений: 368
22.03.2014, 16:31 2
Кликните здесь для просмотра всего текста
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
using System;
 
 
namespace HelixArray
{
    class Program
    {
        static void Main(string[] args)
        {
            int N = 5;
            int val = 1;
            int x = -1;
            int y = 0;
            int [,] array = new int[N,N];
            for (int i = 1; i < 2*N; i++)
            {
                for (int j = 0; j < N-i/2; j++)
                {
                    array[y += (i%4 - 1)%2, x -= (i%4 - 2)%2] = val++;
                }
            }
 
            for (int i = 0; i < array.GetLength(0); i++)
            {
                for (int j = 0; j < array.GetLength(1); j++)
                {
                    Console.Write(array[i,j]+" ");
                }
                Console.WriteLine();
            }
            Console.ReadLine();
        }
    }
}

Долго пытался вывести сам формулу, но в итоге загуглил и нашел решение в одной из статей на Хабре. Кстати, если кто-то объяснит мне, тупому, на пальцах эту формулу, то буду признателен.
1
22.03.2014, 16:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.03.2014, 16:31
Помогаю со студенческими работами здесь

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

Заполнить матрицу ЛП, от левого верхнего угла по спирали: вправо - вниз - влево - вверх
Помогите пожалуйста у меня уже голова кипит.

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

Прямоугольную матрицу заполнить последовательными чётными натуральными числами "по спирали" .
а) составить блок-схему алгоритма решения; б) написать реализующую алгоритм программу на языке...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru