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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.04.2013, 12:43   #1
LLIALLIJIbIK
Пользователь
 
Регистрация: 26.08.2010
Сообщений: 51
По умолчанию Шаг цикла

Возможно ли написать цикл for с шагом меньше единицы? Если да, прошу пример пожалуйста.
LLIALLIJIbIK вне форума Ответить с цитированием
Старый 14.04.2013, 13:03   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

зачем?....
Человек_Борща вне форума Ответить с цитированием
Старый 14.04.2013, 14:37   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

... Не сразу понял о чем речь )
Нет. Не возможно. в Паскале в цикле ФОР нет шага в принципе. Но можно извратится указав приращение отдельно:
Код:
k:double;
...
for i:=1 to 100 do begin
 k:=i/15; // Это следующее значение шага
end;
Как-то так.
I'm learning to live...

Последний раз редактировалось Stilet; 14.04.2013 в 14:40.
Stilet вне форума Ответить с цитированием
Старый 14.04.2013, 14:43   #4
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Цитата:
Возможно ли написать цикл for с шагом меньше единицы?
Да.
Код:
for i:=100 DownTo 1 do...
шаг (-1). Минус 1 меньше, чем 1.

А вообще, можно сделать махинации, внутри цикла, но не изменять сам шаг, а предварительно поработать с границами цикла, а шаг внутри дробить. Но удобнее всего пользоваться циклами while и repeat

Код:
T:=1;
while T < 10 do
T:=T + 0.001
здесь шаг - одна тысячная
Вадим Мошев вне форума Ответить с цитированием
Старый 14.04.2013, 15:45   #5
LLIALLIJIbIK
Пользователь
 
Регистрация: 26.08.2010
Сообщений: 51
По умолчанию

Спасибо. Очень помогли.

Цитата:
Сообщение от Вадим Мошев Посмотреть сообщение
Код:
T:=1;
while T < 10 do
T:=T + 0.001
здесь шаг - одна тысячная
А если компилятор ругается на Incompatible types?

А, нет, все, разобрался

Зато теперь вылетает ошибка application-defined exception (code 0xc00000fd) at 0x73f9e2d4

From Stilet: Ну и зачем кросспост делать? Обсуждай эту ошибку тут.

Последний раз редактировалось Stilet; 14.04.2013 в 16:59.
LLIALLIJIbIK вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно сделать шаг вперед и шаг назад в сортировке расческой DeadGod Помощь студентам 0 29.11.2012 16:11
алгоритмы нахождения эйлерова цикла и гамильтонова цикла в графе. Necare Помощь студентам 0 15.11.2011 18:26
Переход от цикла к циклу не выходя из цикла (без multithreading) Qousio Общие вопросы C/C++ 2 16.05.2009 09:27
на шаг назад... malevich Общие вопросы Delphi 9 01.04.2007 20:50