Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/20: Рейтинг темы: голосов - 20, средняя оценка - 4.50
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
1

Размещение элементов массива по спирали

13.11.2009, 12:45. Просмотров 3659. Ответов 6
Метки нет (Все метки)

Как разместить элементы массива (nxn) по спирали (начиная с нижнего левого угла против часовой стрелки)?
Помогите пожалуйста!!((
0
Вложения
Тип файла: doc Spiral.doc (21.0 Кб, 93 просмотров)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2009, 12:45
Ответы с готовыми решениями:

Дан двумерный массив.Получить последовательность чисел, получающуюся при чтение этого массива по спирали,по часовой стрелке начиная с середины массива
Не понимаю, как написать программу, выполняющую данную задачу, а вот понять...

Заполнение массива по спирали C++
Дано число n. Создайте массив A и заполните его по спирали, начиная с числа 0 в...

Заполнение массива по спирали
НАПРИМЕР ДАН МАССИВ N*N ТОЕСТЬ N в квадрате если 4 то равен 16 если 5 то равен...

Заполнение двумерного массива по спирали
По возможности, помогите получить целочисленную квадратную матрицу порядка...

Размещение элементов в массиве
Задача: Разместить все элементы с нулевым значением в левой части массива,...

6
valeriikozlov
Эксперт С++
4687 / 2513 / 751
Регистрация: 18.08.2009
Сообщений: 4,550
13.11.2009, 13:09 2
Цитата Сообщение от Arl Посмотреть сообщение
Как разместить элементы массива (nxn) по спирали (начиная с нижнего левого угла против часовой стрелки)?
Что значит разместить. Если они находятся в массиве, то они и так размещены (хоть по спирали, хоть по столбцам, хоть по строкам). Или есть одномерный массив размером n*n и его элементы нужно разместить по спирали в пустом массиве n*n? Или есть заполненный двумерный массив n*n и нужно вывести на экран (или в какой нибудь одномерный массив) его элементы в таком порядке (по спирали (начиная с нижнего левого угла против часовой стрелки))?
1
M128K145
Эксперт JavaЭксперт С++
8327 / 3548 / 420
Регистрация: 03.07.2009
Сообщений: 10,708
13.11.2009, 13:17 3
XuTPbIu_MuHTAu не ведь зря трудился, Большая коллекция решенных задач
1
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
13.11.2009, 13:27  [ТС] 4
valeriikozlov, сама задача сформулирована так: "заполнить матрицу последовательностью чисел, кратных 3, в следующем порядке: *рисунок спирали* "

как заполнить матрицу в обычном порядке числами, кратными 3 ,у меня получилось. а вот со спиралью мучаюсь- и никак не выходит((

Добавлено через 1 минуту
M128K145, класс, спасибо - пригодится! методы сортировки будемеще проходитЬ!! но там таких как эта задач нету(..

Добавлено через 3 минуты
valeriikozlov, я вот думал сделать как ваш вариант №3 (есть заполненный двумерный массив n*n и нужно вывести на экран его элементы в таком порядке) , но, у меня ничего не вышло..
0
M128K145
Эксперт JavaЭксперт С++
8327 / 3548 / 420
Регистрация: 03.07.2009
Сообщений: 10,708
13.11.2009, 13:28 5
Arl, посмотри внимательнее, там где матрицы
http://www.cyberforum.ru/cpp-beginne...455-page2.html
http://www.cyberforum.ru/visual-cpp/thread3621.html
0
Arl
0 / 0 / 0
Регистрация: 13.11.2009
Сообщений: 22
13.11.2009, 13:52  [ТС] 6
M128K145, спасибо, попытаюсь разобраться! там направление спиральки другое, но я попробую иправть)
0
valeriikozlov
Эксперт С++
4687 / 2513 / 751
Регистрация: 18.08.2009
Сообщений: 4,550
13.11.2009, 14:03 7
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
#include <iostream.h>
#include <windows.h>
int main ()
{
    int **mas, n, i,j, temp=3, kol_proh=0;
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    cout<<"Ââåäèòå N: "<< endl;
    cin>>n;
    mas=new int*[n];
    for(i=0; i<n; i++)
       mas[i]=new int[n];
    while((i!=n/2-1 && j!=n/2-1 && n%2==0) || (i!=n/2 && j!=n/2 && n%2!=0))
    {
        for(j=0+kol_proh; j<n-kol_proh; j++)
        {
            mas[n-1-kol_proh][j]=temp;
            temp+=3;
        }
        for(i=n-1-kol_proh; i>=kol_proh; i--)
        {
            mas[i][n-1-kol_proh]=temp;
            temp+=3;
        }
        for(j=n-1-kol_proh; j>=kol_proh; j--)
        {
            mas[kol_proh][j]=temp;
            temp+=3;
        }
        for(i=kol_proh; i<n-1-kol_proh; i++)
        {
            mas[i][kol_proh]=temp;
            temp+=3;
        }
        kol_proh++;
    }
   
    cout<<"ïîëó÷åГ*Г*Г*Гї Г¬Г*òðèöГ*"<<endl;
    for(i=0; i<n; i++)
        {
       for(j=0; j<n; j++)
       {
          cout.width(5);
          cout<<mas[i][j]<<" ";
       }
          cout<<endl;
       }
        return 0; 
}
1
13.11.2009, 14:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2009, 14:03

Размещение с повторением элементов
Добрый вечер. Пытаюсь сделать проект, в котором ко всему прочему нужно...

Размещение элементов в памяти
Добрый день! Подскажите. может ли контейнер STL vector хранить значения типа...

Заполнить массив по спирали из одномерного массива
Есть одномерный массив - (1,2,3,...). Нужно на основании этих чисел заполнить...


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

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

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