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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2010, 00:01   #1
Intersap
Пользователь
 
Регистрация: 25.03.2010
Сообщений: 23
По умолчанию изменение шага в for (Pascal)

Небольшой вопрос: как изменить шаг в for, так как необходимо покрутить цикл от 1 до 90 с шагом 5.
Intersap вне форума Ответить с цитированием
Старый 02.12.2010, 00:16   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

никак. цикл FOR в Pascal может иметь шаг или 1 (to) или -1 ( downto )

А зачем Вам FOR ? воспользуйтесь циклом WHILE:
Код:
 i:=1;
 while i<=90 do begin
   {тут ваши действия}
   i := i + 5; {вот и шаг цикла, равный 5}
 end;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 02.12.2010, 00:19   #3
Intersap
Пользователь
 
Регистрация: 25.03.2010
Сообщений: 23
По умолчанию

тема в лабораторной "оператор фор". Через вайл проще - не спорю.
Вроде как бы можна "менять" шаг используя два оператора фор - дык не помню как
Intersap вне форума Ответить с цитированием
Старый 02.12.2010, 08:55   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Мдя...
Код:
for k:=1 to 90 do begin
 if (k*5)>90 then break;
 writeln(k*5);
end;
Сойдет такой извратик?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 02.12.2010, 08:58   #5
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

тогда уж
Код:
for k:=1 to 18 do
writeln(k*5);
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 02.12.2010, 08:59   #6
kiborrgg
Delphi / C++
Пользователь
 
Аватар для kiborrgg
 
Регистрация: 29.09.2010
Сообщений: 28
По умолчанию

интересно, с каких пор нельзя менять шаг в форе
пример:

Код:
for i:=1 to konec do
 begin
  writeln(i);
  i:=i+4; {+4=5}
 end;

Последний раз редактировалось kiborrgg; 02.12.2010 в 09:05.
kiborrgg вне форума Ответить с цитированием
Старый 02.12.2010, 09:07   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
интересно, с каких пор нельзя менять шаг в форе:
то, что это позволяет сделать древний и наивный досовский TurboPascal
не означает, что так можно поступать!
Это раз.

а во вторых, ну попробуйте этот же код выполнить в Delphi..
Вы будете удивлены...
[Error] xxxxx.pas(xxx): Assignment to FOR-Loop variable 'i'
Serge_Bliznykov вне форума Ответить с цитированием
Старый 02.12.2010, 09:12   #8
kiborrgg
Delphi / C++
Пользователь
 
Аватар для kiborrgg
 
Регистрация: 29.09.2010
Сообщений: 28
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
то, что это позволяет сделать древний и наивный досовский TurboPascal
не означает, что так можно поступать!
Это раз.

а во вторых, ну попробуйте этот же код выполнить в Delphi..
Вы будете удивлены...
[Error] xxxxx.pas(xxx): Assignment to FOR-Loop variable 'i'
Название темы "Изменение шага фор в (паскаль)"
kiborrgg вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Суммирование с увеличением шага Avgur2000 Microsoft Office Excel 6 01.12.2010 14:05
Цикл, время выполнения шага KiDoki Общие вопросы Delphi 9 19.12.2008 22:37
Задача/Pascal/графический режим/пошаговое изменение цвета Чайникус Помощь студентам 1 02.05.2008 18:07