Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.06.2008, 21:01   #1
begemotikdin
Пользователь
 
Аватар для begemotikdin
 
Регистрация: 17.12.2007
Сообщений: 36
По умолчанию массив

Всем привет!!! у меня возник небольшой вопрос. Как поменять местами элеиенты массива, т.е. к примеру есть массив
x=(x1,x2,x3,.......x15)
после преобразования должен выглядеть таким образом
x=(x13,x14,x15.......x1,x2,x3)
плиз подскажите
begemotikdin вне форума Ответить с цитированием
Старый 04.06.2008, 21:28   #2
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

А середину не трогаете ?
Что мешает просто поменять
x1 <-> x13
x2 <-> x14
x3 <-> x15
можно в цикле
alexBlack вне форума Ответить с цитированием
Старый 04.06.2008, 22:01   #3
begemotikdin
Пользователь
 
Аватар для begemotikdin
 
Регистрация: 17.12.2007
Сообщений: 36
По умолчанию

да это нуна в цикле, но у меня загвозка. Делаю цикл и не получается, проводя операцию в цикле не могу опереться как его можно увеличить
делая for....., но если их у меня 100 элементов. т.е как поменять, дайте плиз подсказку!!!! Пасибки!!!
begemotikdin вне форума Ответить с цитированием
Старый 04.06.2008, 22:16   #4
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Цитата:
Сообщение от begemotikdin Посмотреть сообщение
да это нуна в цикле, но у меня загвозка. Делаю цикл и не получается, проводя операцию в цикле не могу опереться как его можно увеличить
делая for....., но если их у меня 100 элементов. т.е как поменять, дайте плиз подсказку!!!! Пасибки!!!
Если как у Вас в примере, то так:

Код:
N - размер массива (15)
for i:=1 to 3 do begin
    // элемент x[i] меняем с x[N-3+i]
    t := x[i];
    x[i] := x[N-3+i]
    x[N-3+i] := t
end;
alexBlack вне форума Ответить с цитированием
Старый 04.06.2008, 22:52   #5
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Это-ж надо так переделать.
В конце замените:
Код:
   if n >= 6 then begin
      for p:=1 to 3 do begin
        buf:=x[p];
        x[p]:=x[n-3+p];
        x[n-3+p]:=buf;
      end;
   end;
alexBlack вне форума Ответить с цитированием
Старый 04.06.2008, 22:58   #6
begemotikdin
Пользователь
 
Аватар для begemotikdin
 
Регистрация: 17.12.2007
Сообщений: 36
По умолчанию

Большое спасибо!!! Сам себя запутал!!!
begemotikdin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массив Айвенго PHP 2 22.02.2008 16:34
Массив.С++ bloo[d] Помощь студентам 1 13.01.2008 14:55
массив! Jodu Помощь студентам 2 11.01.2008 20:59
Массив xxxPascalxxx Помощь студентам 10 05.01.2008 16:19
Массив Snake_ua Помощь студентам 2 15.10.2007 07:04