Между населенными пунктами A,B,C,D,E,F построены дороги, протяженность которых( в километрах) приведена в таблице: Определите длину кратчайшего пути между A и F. Передвигаться можно только по дорогам, протяженность которых указана в таблице
Задачу лучше решать с конца – то есть получать число 1 из числа 434 с командотними 2 отними 3 раздели на 10Первые две команды должны быть командами вычитания 2 (команда №1), после их выполнения мы получим 430. В противном случае после выполнения двух первых команд мы получим 429 или 428 и после выполнения 6 команд наименьшее число, которое можно будет получить – это число 42. Третьей командой (по аналогичным соображениям) должна быть команда №3 «раздели на 10». После ее выполнения получим 43. Далее, рассуждая аналогично, находим три остальные команды. Это будут, соответственно, команда №2 (получим 40), команда №3 (получим 4), команда №2 (получим 1). Таким образом, в новой системе команд программа получения числа 1 из числа 434 – это программа 113232. Значит, искомая программа получения числа 434 из числа 1 в исходной системе – это «обратная программа» - программа 232311.
Var n,m:interer; Begin write('Введите день') ; Readln(d); write('Введите месяц'); Readln(m); if (m = 2) and (d=28) then writeln('День - 1',' Месяц - 3'); if (m=1) or (m=3) or (m=5) or (m=7) or (m=8) or (m=10) or (m=12) then if (d>1) and (d<31) then begin d:=d+1; writeln('День -',d,'Месяц- ',m); end else if d=31 then begin m:=m+1; wrteln('День - 1','Месяц- ',m); end; if (m=2) or (m=4) or (m=6) or (m=9) or (m=11) they if d<30 then begin d:=d+1; writeln('День -',d,'Месяц- ',m); end else d=30 then begin m:=m+1; wrteln('День - 1','Месяц- ',m); end; readln; end. НЕДОРАБОТАНА
отними 3
раздели на 10Первые две команды должны быть командами вычитания 2 (команда №1), после их выполнения мы получим 430. В противном случае после выполнения двух первых команд мы получим 429 или 428 и после выполнения 6 команд наименьшее число, которое можно будет получить – это число 42. Третьей командой (по аналогичным соображениям) должна быть команда №3 «раздели на 10». После ее выполнения получим 43. Далее, рассуждая аналогично, находим три остальные команды. Это будут, соответственно, команда №2 (получим 40), команда №3 (получим 4), команда №2 (получим 1). Таким образом, в новой системе команд программа получения числа 1 из числа 434 – это программа 113232. Значит, искомая программа получения числа 434 из числа 1 в исходной системе – это «обратная программа» - программа 232311.
Begin
write('Введите день') ; Readln(d);
write('Введите месяц'); Readln(m);
if (m = 2) and (d=28) then writeln('День - 1',' Месяц - 3'); if (m=1) or (m=3) or (m=5) or (m=7) or (m=8) or (m=10) or (m=12) then if (d>1) and (d<31) then begin d:=d+1; writeln('День -',d,'Месяц- ',m); end else if d=31 then begin m:=m+1; wrteln('День - 1','Месяц- ',m); end; if (m=2) or (m=4) or (m=6) or (m=9) or (m=11) they if d<30 then begin d:=d+1; writeln('День -',d,'Месяц- ',m); end else d=30 then begin m:=m+1; wrteln('День - 1','Месяц- ',m); end;
readln;
end.
НЕДОРАБОТАНА