![]() |
Помогите написать программу, которая будет превращать двумерный массив в одномерный
Вложений: 1
Собственно, задача заключается в том, что бы превратить двумерный массив (он должен быть динамическим и пользователь вводит каждый элемент) в одномерный путём считывания его элементов по часовой стрелке (как на картинке). Размерность задаётся пользователем, впрочем, как и элементы. Так вот, проблема именно с этим считыванием. Как его сделать правильно?? Я пробовал с помощью строк (string), но ничего не получилось (хотя, казалось бы, учёл всё что можно). Прошу помощи! Вот мой код:
Код:
#include<iostream>; |
Normandez, параметрически то задачку решить не пробовали?
Разбить квадраты на подквадраты? Забудьте, что у вас спираль. Считайте значения по периметру. Просто по периметру, по часовой стрелке. Затем уменьшите размер квадрата на 1 и считайте еще раз. Это куча счетчиков - явная ошибка (я даже следить за ней не буду) И уберите работу со строками - вас об этом не просят. Массив - значит массив. Для удобства возьмите числа (все что не оговорено явно, трактуется в пользу студента). Ах, да. Самое главное - дайте переменным нормальные названия! i, j, k - по умолчанию счетчики. Остальное назвать полными именами. Цитата:
|
Спасибки за идею. Действительно, так должно быть проще (через считывание по периметрам). Попробую
|
Цитата:
Код:
# # # # # |
Цитата:
|
Цитата:
|
Цитата:
Лабиринт — Википедия: Цитата:
Скрытый текст
![]() Будем ли мы пользоваться правилом правой руки или левой руки — выход мы не найдём. Но второе — что в этом случае мы, рано или поздно, вернёмся в исходную точку — совершенно верно. |
Цитата:
|
Дело в том, что как вход, так и выход, могут быть где угодно, не только во внешней стене. Достаточно только представить, что вход и выход — не на плоскости, а в пространстве.
Вот скажем, была такая игрушка: Скрытый текст
![]() где надо было провести шарик с внешней окружности к центру — помните? |
Цитата:
|
Iska,
Цитата:
|
Время: 08:01. |
Время: 08:01.
© OSzone.net 2001-