Var
N,A:integer;
Begin
Write('N = ');Read(N);
A:=0;
While N>0 do
Begin
if (N mod 10) > A then A:= N mod 10;
N:=N div 10;
End;
Write(A)
End.
Var
N,A,B:integer;
C:boolean;
Begin
Write('N = ');Read(N);
A:=-1;
B:=-2;
C:=false;
While N>0 do
Begin
if A=B then C:=true;
if N>0 then
Begin
A:=N mod 10;
N:=N div 10;
End;
if A=B then C:=true;
if N>0 then
Begin
B:=N mod 10;
N:=N div 10;
End;
End;
if A=B then C:=true;
if C then Write('Есть')
else Write('Нет')
End.
Подробнее - на -
46
Объяснение:
Будем последовательно находить количество дорог до пунктов, которые встречаются по пути к пункту Ж. Мы уже находимся в городе А, поэтому туда можно сказать ведет 1 дорога. ставим метку. От города А дороги идут в Б Г В и Д, но мы не можем сказать, сколько дорог ведет в города Г В и Д, потому что в них ведет по 2 дороги, из А и из Б/B/Г соответственно, а знаем мы только количество дорог в А(1). Поэтому ставим метку городу, которому мы ее можем дать - это город Б, в который ведет только 1 дорога из А. Количество дорог в какой-либо город равна сумме дорог в города, которые предшествуют ему. То есть в Б ведет тоже только 1 дорога. Помечаем.
По аналогии делаем со всеми другими городами:
Город В: в него ведут 2 дороги, из А и Б, суммируем количество дорог в них и получаем количество дорог в В, то есть 1+1=2.
Город Г: 2 дороги, из А и В, то есть количество дорог в г равно сумме дорог в А и В, то есть 1+2=3
И так далее. Рисунок со всеми метками прикреплен
Поделитесь своими знаниями, ответьте на вопрос:
Кто шарит в информатике надо составить программу в которой числа идут по порядку
i,n:byte;
begin
readln(n);
for i:=1 to n do
write(i + ' ');
readln
end.