Помогите, пожалуйста, с задачей на паскаль. (В решение есть ошибки. Как написать код правильно?) Два поезда из разных населенных пунктов одновременно выезжают навстречу друг другу и через t часов они встретились. Еще через t1 ...
Помогите, пожалуйста, с задачей на паскаль. (В решение есть ошибки. Как написать код правильно?)
Два поезда из разных населенных пунктов одновременно выезжают навстречу друг другу и через t часов они встретились. Еще через t1
часов первый поезд прибыл в пункт, из которого выехал второй поезд. Через какое время второй поезд прибудет в пункт, из которого выехал первый поезд.
Входные данные
Два целых неотрицательных числа t и t1 (не превосходят 24).
Выходные данные
Вывести время, через которое второй поезд прибудет в конечный пункт в формате часы минуты.
var t,t1,t2,a,a1,x,x1:real;
begin
read(t);
read(t1);
a:=t*60;
a1:=t1*60;
t2:=a*a/a1;
x:=t2 div 60;
x1:=t2 mod 60;
writeln(t2:0:0,' ',x:0:0,' ',x1:0:0);
end.
Ответ(ы) на вопрос:
Гость
А дело всё в том, что операция mod на типе real не работает.
Ради работоспособности придётся либо менять алгоритм, либо жертвовать точностью, округляя t2:
var
t, t1, t2, a, a1, x, x1: real;
begin
readln(t);
readln(t1);
a := t * 60;
a1 := t1* 60;
t2 := (a * a) / a1;
x := t2 div 60;
x1 := Round(t2) mod 60;
writeln(t2:0:0,' ',x:0:0,' ',x1:0:0);
end.
Гость
var t,t1,t2,x,x1:real;
begin
readln(t);
readln(t1);
t2:=t*t/t1;
x:=trunc(t2);
x1:=frac(t2)*60;
writeln(t2,' ',x:0:0,' ',x1:0:0);
end.
Пример:
4.5
3
6.75 6 45
Не нашли ответ?
Похожие вопросы