Консультация № 193735
19.10.2018, 23:28
0.00 руб.
0 2 1
Уважаемые эксперты! Пожалуйста, помогите написать программу. Дано: целые числа m и n (часы и минуты), 0<=m<=11,
0<=n<=59, определяющие время суток. Определить наименьшее время (число полных минут), которые должны пройти до того момента, когда часовая и минутная стрелки на циферблате разместятся перпендикулярно друг другу.
P.s. Lazarus

Обсуждение

давно
Старший Модератор
31795
6196
20.10.2018, 14:13
общий
это ответ
Здравствуйте, lalka!

Код написан, в режиме совместимости с Паскалем, поэтому должен работать и в Lazarus'е(ну нет у меня Lazarus'a).
[code lang=pascal]var
h,m,yH,yM,z:integer;
begin
repeat
write('Enter h:');
readln(h);
until h in[0..11];
repeat
write('Enter m:');
readln(m);
until m in[0..59];
z:=-1;
repeat
inc(z);
yH:=30*h+round(12*m/60);
yM:=round(360*m/60);
if (yH<90)or(yH>270)then yH:=(yH+180)mod 360;
if (yM<90)or(yM>270)then yM:=(yM+180)mod 360;
inc(m);
h:=(h+(m div 60))mod 12;
m:=m mod 60;
until abs(yH-yM)in[87..93];
writeln(h:2,':',m:2,' count:=',z);
end.[/code]
Удачи!
5
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

давно
Посетитель
402048
17
20.10.2018, 21:05
общий
Адресаты:
Спасибо Вам огромное.
Форма ответа