Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.97.9.174] |
|
Страницы: (2) 1 [2] все ( Перейти к последнему сообщению ) |
Сообщ.
#16
,
|
|
|
Ну хорошо!!!
Var h, m: Integer; Hpos, Mpos, Msovp, Mint: Real; Begin Write('Введите Часы Минуты: '); ReadLn(h, m); h := h mod 12; Hpos := h + m/60; Mpos := m/5; h := (h + Ord(Mpos > Hpos)) mod 12; Msovp := h*60/11; Mint := 60*Ord(Mpos > Hpos) + Msovp - m; WriteLn('Через ', Trunc(Mint), ' минут ', Trunc(Frac(Mint)*60), ' секунд') End. Булевских переменных нет! (есть только булевские выражения, но это же не переменные) ;D |
Сообщ.
#17
,
|
|
|
Сформулировал не полностью - булевские выражения тоже низззя !!!! ???
|
Сообщ.
#18
,
|
|
|
Наверное, что-то вроде этого:
program clock1; var h,m,s,t:integer; begin readln(h,m); s:=((m-5*h-(m div 12)) div abs(m-5*h-(m div 12))+1) div 2; (* s=0, если минутная стрелка позади часовой, иначе s=1 *) t:=(60-m)*s; h:=h+s; m:=m*(1-s); t:=t+5*h-m+(h-1) div 2; writeln(t); end. |
Сообщ.
#19
,
|
|
|
А лучше - вроде этого:
program clock2; var h,m,s,t:integer; begin readln(h,m); t:=5*h-m+(h-1) div 2; s:=((t div abs(t))+1) div 2; t:=t+65*(1-s); writeln(t); end. |
Сообщ.
#20
,
|
|
|
Кто-нибудь, пож-ста, поясните последнее решение!
|
Сообщ.
#21
,
|
|
|
to exe смотри вроде так
programm cl; var z,j,h,m:integer; begin readln(h,m); j:=h*5 div m; if j=0 then writeln('Svpodaet'); if m:=h*5+30 then writeln('perpendikylarni!'); end. |
Сообщ.
#22
,
|
|
|
извини я условие мельком прочитал!!!
|