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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.02.2014, 17:15   #11
009
Пользователь
 
Регистрация: 09.02.2014
Сообщений: 33
По умолчанию

Код:
var
l,t,d:longint;
k,m:longint;
begin
read(l,t,d);
m:=l div 10;
k:=t div m;
if ((k mod 2=0)and((t mod m)*10>=d)) or ((k mod 2<>0) and ((t mod m)*10>=l-d)) then k:=k+1;
if d=0 then k:=(t div m) div 2 +1;
if d=l then begin k:=(t div m) div 2;
if (t div m) mod 2 <>0 then inc(k);
end;
write(k);
end.
009 вне форума Ответить с цитированием
Старый 17.02.2014, 18:07   #12
uzer2007
Пользователь
 
Регистрация: 16.01.2014
Сообщений: 15
По умолчанию

009 спасибо, а можно немножко пояснить?
uzer2007 вне форума Ответить с цитированием
Старый 17.02.2014, 18:17   #13
009
Пользователь
 
Регистрация: 09.02.2014
Сообщений: 33
По умолчанию

Цитата:
Сообщение от uzer2007 Посмотреть сообщение
009 спасибо, а можно немножко пояснить?
можно.
вот эта часть:
Код:
if ((k mod 2=0)and((t mod m)*10>=d)) or ((k mod 2<>0) and ((t mod m)*10>=l-d)) then k:=k+1;
это решение озвученное выше.
Вот эти два случая:
Код:
if d=0 then k:=(t div m) div 2 +1;
if d=l then begin k:=(t div m) div 2;
if (t div m) mod 2 <>0 then inc(k);
когда d=0 и когда d=l. Попробуйте вручную порисовать и понять как для этих случаев как будет пересекать датчик бегун.
009 вне форума Ответить с цитированием
Старый 17.02.2014, 18:48   #14
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
Вот эти два случая:
О, точно, здесь я немного не учел...
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 18.02.2014, 12:28   #15
uzer2007
Пользователь
 
Регистрация: 16.01.2014
Сообщений: 15
По умолчанию

спасибо огромное! Здорово помогли разобраться!
uzer2007 вне форума Ответить с цитированием
Ответ


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

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

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