из пункта а в пункт в выехал велосипедист со скоростью v0 км/час.
из пункта а в пункт в выехал велосипедист со скоростью v0 км/час. одновременно навстречу ему из пункта в двинулся «автостопом» другой путник. s1 м он двигался со скоростью v1 м/час, s2 м – со скоростью v0 км/час, s3 м – со скоростью v3 км/час. через сколько часов после старта и в какой точке путники встретились?
Алгоритм решения нужно написать на языке Pascal.Переменные задаются пользователем
Вобщем выкладывал задание для того чтобы самому на него и ответить. Т. к. решения такой задачи в инете я не нашел. Пришлось самому решать. Теперь пользуйтесь и говорите спасибо)) )
program p1;
var s1,s2,s3,v0,v1,v3,x: real;
t1,t2,t3,ovp,vp,tv,os: real;
label m1;
begin
write('Введите v0 (км/ч) ___');
read(v0);
write('Введите v1 (м/ч) ___');
read(v1);
write('Введите v3 (км/ч) ___');
read(v3);
write('Введите s1 (м) ___');
read(s1);
write('Введите s2 (км) ___');
read(s2);
write('Введите s3 (км) ___');
read(s3);
s1:=s1/1000;
v1:=v1/1000;
os:=s1+s2+s3;
begin
t1:=s1/v1;
if t1*v0+s1>=os then
begin
vp:=os/(v0+v1);
tv:=vp*v0;
writeln('');
writeln('***ОТВЕТ***');
writeln('Они встретятся через ', vp, ' часов, на расстоянии ',tv, ' км от точки А');
end
else
begin
ovp:=t1;
end;
t2:=s2/v0;
if s1+s2+(v0*(t1+t2))>=os then
begin
vp:=(os-s1-(v0*t1))/(v0+v0);
tv:=(ovp+vp)*v0;
if vp<0 then goto m1;
writeln('');
writeln('***ОТВЕТ***');
writeln('Они встретятся через ', vp+t1, ' часов, на расстоянии ',tv, ' км от точки А');
end
else
begin
ovp:=ovp+vp;
end;
t3:=s3/v3;
if s1+s2+s3+(v0*(t1+t2+t3))>=os then
begin
vp:=(os-s1-s2-(v0*t2))/(v0+v3);
tv:=(ovp+vp)*v0;
if vp<0 then goto m1;
writeln('');
writeln('***ОТВЕТ***');
writeln('Они встретятся через ', vp, ' часов, на расстоянии ',tv, ' км от точки А');
end;
m1: end;
end.