Дорога в школу В Байттауне, как и во многих других городах есть метро. Оно представляет собой N станций, расположенных по кругу. Станции пронумерованы от 1 до N по часовой стрелке, станция номер 1 находится между станциями с но...
Дорога в школу
В Байттауне, как и во многих других городах есть метро. Оно представляет собой N станций, расположенных по кругу. Станции пронумерованы от 1 до N по часовой стрелке, станция номер 1 находится между станциями с номерами N и 2.
В этом замечательном городе есть одна школа, в которой учатся все городские дети. Эта школа находится на станции номер 1. Каждое утро городские дети заходят в метро, выбирают в какую сторону им ехать, садятся в поезд и едут в школу. Многие дети хотели бы знать, в какую сторону им ехать, чтобы проехать минимальное количество станций, прежде чем они попадут в школу. Так например, если в городе 5 станций, то школьнику Ивану, живущему на станции номер 4, достаточно проехать 2 остановки, и вот он уже в школе, а Марии, живущей на 2 станции, достаточно проехать одну остановку.
Ваша задача – по номеру станции, на которой живёт школьник, вывести количество остановок, которое ему придёт проехать по пути в школу
Ответ(ы) на вопрос:
var
n,s:integer;{объявляем переменные}
begin
readln(n,s);
if (n div 2) >= s then writeln(s-1)
else writeln(n-s+1);
end.
Конечно костыль, но ничего лучше я не придумал
var c,b,e,n,a:integer;
begin
write('введите количество остановок => ');
readln(a);
a:=a+1;
write('на какой остановке живёт ребёнок => ');
readln(b);
c:=0; n:=0;
for c:=1 to b do begin;
e:=e+1;
end;
for c:=a downto b do begin
n:=n+1;
end;
if (e ',e-1) else writeln('кол-во остановок => ',n-1);
end.
Не нашли ответ?
Похожие вопросы