Б) 0:05. Это рейс с пересадкой в Москве.
Несмотря на множество рейсов, вариантов перелёта всего 4: прямой до Лондона, с пересадкой в Москве, с пересадкой в Праге и с двумя пересадками в Москве и Праге.
Прямой рейс уже улетел, пассажир будет в Лондоне завтра в 22:25
Через Москву пересадка займёт 20 минут и он будет в Лондоне в 0:05.
Через Прагу не получится, так как Лондонский рейс вылетает за 40 минут до прилёта Киевского и надо сутки ждать в Праге.
А две пересадки тоже не катят, надо полдня ждать в Праге.
Можно в цикле for написать по возрастанию: for a:=1 to b или по убыванию: for a:=10 downto b
Var n,m,p,s:integer;
begin
write('n=');
readln(n);
m:=n;k:=0;
write('цифры, которые >=4 и <=8 : ');
while m<>0 do begin
p:=m mod 10;
m:=m div 10;
if (p>=4) and (p<=8) then begin
write(p,' ');
s:=s+p;
end;
end;
writeln;
writeln('сумма этих цифр = ',s);
end.
Тут нужно работать со степенями числа 2; от 0 до 10 попадают только 2^1=2 (символа), 2^2=4 (символа) и 2^3=8 (символов), из этих вариантов нам подходят 2^2 и 2^3 т.к. символы первого текста кодируются 2 битами, а второго 3 битами (если разделить 3 на 2, то получится 1,5 - как сказано в задаче), значит в первом тексте 4 символа, во втором 8.