Текущее время: 19 дек 2017, 00:35


Стандартные операции с массивами

Стандартные операции с массивами

Сообщение HAMMER » 28 янв 2011, 16:01

Часто можно увидеть как на форумах просят сделать "переворот" массива.
Например, было
1 2 3 4 5


Стало
5 4 3 2 1


Осуществляется это так:
Код: Выделить всё
var
   a:array[1..100] of integer;
   i,r,n:integer;
begin
 readln(n);  {читаем размер массива}
 for i:=1 to n do
  read(a[i]);
 for i:=1 to n div 2 do   {сам "переворот"}
  begin
   r:=a[i];
   a[i]:=a[n-i+1];
   a[n-i+1]:=r;
  end;
 for i:=1 to n do
  write(a[i],' ');
 readln
end.


2) Не менее возникает вопрос о сдвиге массива на k элементов влево или вправо.
Было
1 2 3 4 5


Стало
5 1 2 3 4


Сдвиг влево на k элементов:
Код: Выделить всё
var
   a:array[1..100] of integer;
   i,r,n,k,j:integer;
begin
 read(n,k);  {k обозначает величину сдвига}
 for i:=1 to n do
  read(a[i]);
 for i:=1 to k do
  begin
   for j:=1 to n do
    if (j=1) then r:=a[j] else a[j-1]:=a[j];
   a[n]:=r;
  end;
 for i:=1 to n do
  write(a[i],' ');
 readln
end.


Сдвиг на k элементов вправо:
Код: Выделить всё
var
   a:array[1..100] of integer;
   i,r,n,k,j:integer;
begin
 read(n,k);  {k обозначает величину сдвига}
 for i:=1 to n do
  read(a[i]);
 for i:=1 to k do
  begin
   for j:=n downto 1 do
    if (j=n) then r:=a[n] else a[j+1]:=a[j];
   a[1]:=r;
  end;
 for i:=1 to n do
  write(a[i],' ');
 readln
end.
АКЦИЯ: Каждому флудеру/оффтопщику - день бана в подарок! Приведи с собой друга и отгреби за двоих!

VIP группа на форуме BestCoding.info

FAQ по SEO (постепенно пополняется)
Мой любимый форум phpBB

HAMMER

Автор темы
Аватара пользователя
Администратор
 
Сообщения: [ 930 ]
Зарегистрирован: 20 янв 2011, 13:54
Откуда: Зеленоград
Благодарил (а): 9 раз.
Поблагодарили: 85 раз.

Re: Стандартные операции с массивами

Сообщение 95virus » 01 фев 2011, 23:02

Отлично

Аватара пользователя
Прохожий
 
Сообщения: [ 2 ]
Зарегистрирован: 01 фев 2011, 23:00
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Стандартные операции с массивами

Сообщение ewgeny » 01 фев 2011, 23:26

хватит флудить уже

Аватара пользователя
Застенчивый
 
Сообщения: [ 49 ]
Зарегистрирован: 21 янв 2011, 15:38
Благодарил (а): 4 раз.
Поблагодарили: 2 раз.

Re: Стандартные операции с массивами

Сообщение ARSARTS » 02 фев 2011, 17:51

Помню такие массивы делали еще в школе :) А я все таки и не смог этого сделать тупо списал у друга ;)
Предоставляю услуги вeб-дизaйнa и грaфики
Моё портфолио - _http://weblancer.net/users/arsarts

Аватара пользователя
Застенчивый
 
Сообщения: [ 56 ]
Зарегистрирован: 01 фев 2011, 23:14
Откуда: г. Якутск
Благодарил (а): 7 раз.
Поблагодарили: 3 раз.

Re: Стандартные операции с массивами

Сообщение HAMMER » 02 фев 2011, 19:35

мы все учились понемногу чему-нибудь и как-нибудь...
АКЦИЯ: Каждому флудеру/оффтопщику - день бана в подарок! Приведи с собой друга и отгреби за двоих!

VIP группа на форуме BestCoding.info

FAQ по SEO (постепенно пополняется)
Мой любимый форум phpBB

HAMMER

Автор темы
Аватара пользователя
Администратор
 
Сообщения: [ 930 ]
Зарегистрирован: 20 янв 2011, 13:54
Откуда: Зеленоград
Благодарил (а): 9 раз.
Поблагодарили: 85 раз.

Стандартные операции с массивами

Сообщение ex1t » 13 фев 2011, 19:17

эта стандартная сортировка массива ! есть более быстрые способы отсортировать массив!

Аватара пользователя
Застенчивый
 
Сообщения: [ 73 ]
Зарегистрирован: 26 янв 2011, 21:04
Откуда: Беларусь, Негневичи
Благодарил (а): 3 раз.
Поблагодарили: 2 раз.

Стандартные операции с массивами

Сообщение HAMMER » 13 фев 2011, 19:49

так давайте, выкладывайте
АКЦИЯ: Каждому флудеру/оффтопщику - день бана в подарок! Приведи с собой друга и отгреби за двоих!

VIP группа на форуме BestCoding.info

FAQ по SEO (постепенно пополняется)
Мой любимый форум phpBB

HAMMER

Автор темы
Аватара пользователя
Администратор
 
Сообщения: [ 930 ]
Зарегистрирован: 20 янв 2011, 13:54
Откуда: Зеленоград
Благодарил (а): 9 раз.
Поблагодарили: 85 раз.

Стандартные операции с массивами

Сообщение onyx73 » 18 мар 2011, 09:49

ex1t писал(а):эта стандартная сортировка массива ! есть более быстрые способы отсортировать массив!


это не сортировка, а простое перемещение элементов с места на место

Аватара пользователя
Застенчивый
 
Сообщения: [ 44 ]
Зарегистрирован: 14 мар 2011, 09:49
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Стандартные операции с массивами

Сообщение gogem » 30 июл 2011, 19:08

блин делал такую фигню ток с наворотом ошибка странная буду разбираться

Аватара пользователя
Прохожий
 
Сообщения: [ 8 ]
Зарегистрирован: 30 июл 2011, 19:01
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.


Вернуться в Pascal

Кто сейчас на конференции

Зарегистрированные пользователи: нет зарегистрированных пользователей

cron