![]() |
|
Модераторы: Poseidon |
![]()
|
|
| METTER |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 9.9.2008 Репутация: нет Всего: нет |
Ребят, выручите плиз.. нужно срочно для получения зачёта ))
Дан массив размера N. осуществить циклический сдвиг массива вправо на одну позицию (при этом А1 перейдёт в А2, А2 в А3, а Аn в А1). Заранее спасибо! |
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 16 Всего: 128 |
METTER, вопрос на засыпку: а что окажется тогда в A[1] ?
|
|||
|
||||
| METTER |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 9.9.2008 Репутация: нет Всего: нет |
mr.Anderson, в А1 перейдёт Аn... т.е. последний элемент
|
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 16 Всего: 128 |
METTER, ну, тогда вот так:
|
|||
|
||||
| METTER |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 9.9.2008 Репутация: нет Всего: нет |
mr.Anderson, прошу прощения, что сразу не указал - здесь А1 - это образно... т.е. должно быть так - массив создаётся рандомом, выводится, а потом происходит сдвиг.. и вновь выводится...
Это сообщение отредактировал(а) METTER - 9.9.2008, 21:14 |
|||
|
||||
| METTER |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 9.9.2008 Репутация: нет Всего: нет |
нашёл вот такой пример решения
var a:array[1..10] of integer; x:integer; i:integer; begin writeln('введите 5 элементов массива'); for i:=1 to 5 do readln( a[i] ); x:=a[5]; for i:=5 to 2 do begin a[i]:=a[i-1]; end; a[1]:=x; writeln('после сдвига:'); for i:=1 to 5 do writeln( a[i] ); end. но в нём происходит замена только первого элемента.. помогите пожалуйста подправить, чтобы заменялись все элементы |
|||
|
||||
| THandle |
|
|||
![]() Хранитель Клуба Награды: 1 Профиль Группа: Админ Сообщений: 3639 Регистрация: 31.7.2007 Где: Moscow, Dubai Репутация: 30 Всего: 372 |
Может я не правильно понял, но попробуй вот так:
|
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 16 Всего: 128 |
Не въехал, чем мое решение не устроило... Добавить только заполнение рандомное перед циклом обхода и все...
|
|||
|
||||
| THandle |
|
|||
![]() Хранитель Клуба Награды: 1 Профиль Группа: Админ Сообщений: 3639 Регистрация: 31.7.2007 Где: Moscow, Dubai Репутация: 30 Всего: 372 |
mr.Anderson, чисто для тебя. Попробуй этот вот вариант, твой.
работает? |
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 16 Всего: 128 |
Усе, молчу, действительно не работает. Ну что вы хотите, я уже спал, когда это писал...
Подправил.
|
|||
|
||||
| METTER |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 9.9.2008 Репутация: нет Всего: нет |
THandle, огромное спасибо! Именно то что нужно! ))) Только вот если N=5 поставить, то приходится вводить 6 раз, а не 5.. можно ли это подправить? Ну, если не особо трудно...
Но вообще, mr.Anderson и THandle, большое спасибо за оказанную помощь! |
|||
|
||||
| THandle |
|
||||
![]() Хранитель Клуба Награды: 1 Профиль Группа: Админ Сообщений: 3639 Регистрация: 31.7.2007 Где: Moscow, Dubai Репутация: 30 Всего: 372 |
METTER, у меня просто массив начинается с 0 до N, то есть количество элементов = N + 1.
Если надо чтобы было N, то можно либо сделать массив [0..N-1] либо [1..N]. Оба варианта даю 1 вариант:
2 вариант:
Удачи!!! Если вопрос решен, то поставь теме галочку "Пометить как решенный" |
||||
|
|||||
| METTER |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 9.9.2008 Репутация: нет Всего: нет |
THandle, огромное спасибо!
|
|||
|
||||
| THandle |
|
|||
![]() Хранитель Клуба Награды: 1 Профиль Группа: Админ Сообщений: 3639 Регистрация: 31.7.2007 Где: Moscow, Dubai Репутация: 30 Всего: 372 |
||||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |