var a,b,c,d,res: integer;
begin
write('Введите a: ');
readln(a);
write('Введите b: ');
readln(b);
write('Введите c: ');
readln(c);
write('Введите d: ');
readln(d);
res := a;
// Проверяем число b
if (b mod 10 > res mod 10) then res:=b
else if (b mod 10 = res mod 10) then
begin
if (res<b) then res:=b;
end;
// Проверяем число c
if (c mod 10 > res mod 10) then res:=c
else if (c mod 10 = res mod 10) then
begin
if (res<c) then res:=c;
end;
// Проверяем число d
if (d mod 10 > res mod 10) then res:=d
else if (d mod 10 = res mod 10) then
begin
if (res<d) then res:=d;
end;
writeln('Число с наибольшей последней цифрой: ',res);
end.
В город М напрямую можно попасть только из города Н (в который напрямую можно попасть только из города Ж), и из города Ж. Значит, для любого пути в Ж из А есть два варианта, как проехать в М.
В город Ж можно попасть напрямую из городов В, Г, и Д. В город В из города А можно попасть тремя путями: АБВ, АГВ и АБГВ, в город Г - двумя: АГ и АБГ, в город Е - тремя: АГЕ, АДЕ и АБГЕ.
Итого: Из города А в город Ж есть 3+2+3=8 путей, из Ж в М - 2 пути. Для каждого пути из А в Ж есть оба варианта пути из Ж в М, поэтому умножаем: 8×2=16 путей.
ответ: 16 путей
Буду очень благодарен, если Вы отметите мой ответ как лучший!