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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.02.2013, 20:38   #1
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию Задержка от и до в секундах, как?

Как сделать задержку в секундах от и до используя Sleep();?
Например от 1 до 6 секунд, и задержка должна быть рандомной от 1 до 6 секунд.
FleXik вне форума Ответить с цитированием
Старый 10.02.2013, 20:41   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
sleep(1000+random(5000));
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.02.2013, 21:06   #3
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Код:
var
i, k:integer;
begin
i:=Form1.sSpinEdit1.Value;
k:=Form1.sSpinEdit2.Value;
Sleep(i + Random(k)*1000);
end;
Вот, намутил, может кому-то понадобится
FleXik вне форума Ответить с цитированием
Старый 10.02.2013, 21:08   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
Sleep((i + Random(k-i+1))*1000);
как то так тогда.
выдаст задержку от i до k секунд.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.

Последний раз редактировалось Пепел Феникса; 10.02.2013 в 21:20.
Пепел Феникса вне форума Ответить с цитированием
Старый 10.02.2013, 21:27   #5
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
Код:
Sleep((i + Random(k-i+1))*1000);
как то так тогда.
выдаст задержку от i до k секунд.
а вот теперь правильно, какраз хотел написать, спасибо =)
FleXik вне форума Ответить с цитированием
Старый 18.07.2013, 13:44   #6
Stertor
Заблокирован
 
Регистрация: 17.07.2013
Сообщений: 104
По умолчанию

Использовать sleep в потоке формы абсолютно недопустимо, потому, что форма зависнет )
Stertor вне форума Ответить с цитированием
Старый 18.07.2013, 14:13   #7
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
Использовать sleep в потоке формы абсолютно недопустимо, потому, что форма зависнет )
+1.

Тс, в модуле Math существует функция RandomRange(от тут, до там).
Человек_Борща вне форума Ответить с цитированием
Старый 19.07.2013, 21:22   #8
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Ребята, вы что напились все?
Код:
sleep(random(6) * 1000);
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 19.07.2013, 21:28   #9
Stertor
Заблокирован
 
Регистрация: 17.07.2013
Сообщений: 104
По умолчанию

Цитата:
Ребята, вы что напились все?
Не надо хамить. Возьми в руки справочник по WinApi и посмотри, как работает Sleep.
А работает она следующим образом: поток, вызвавший эту процедуру, тормозится на указанное время в (мс). Это значит, что ни обработка сообщений формы,ни перерисовка и тп. выполняться НЕ будут. Если приложение однопоточное оно зависнет на random(6) * 1000 сек.
Stertor вне форума Ответить с цитированием
Старый 19.07.2013, 21:28   #10
Вадим Мошев

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

Цитата:
Сообщение от саша40 Посмотреть сообщение
Ребята, вы что напились все?
Код:
sleep(random(6) * 1000);
В таком случае будет задержка от 0 до 5 секунд. Тогда уж так:
Код:
sleep((1+random(6)) * 1000);
Вадим Мошев вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задержка в программе в секундах как? FleXik Общие вопросы Delphi 4 24.01.2013 04:22
как вывести время тока в минутах и секундах digital-stream Мультимедиа в Delphi 3 13.03.2012 09:18
программа меняющую данные о минутах и секундах местами \/eronicK@ Помощь студентам 4 29.02.2012 23:28
счетчик времени в секундах Ledom Общие вопросы C/C++ 7 01.03.2011 21:14
Обратный отсчёт в часах минутах и секундах Shouldercannon Общие вопросы Delphi 18 06.08.2010 21:53