Var a:integer; begin read (a); if (a mod 10<1) or (a div 100 < 1) or ((a mod 100) div 10 < 1) or (a div 1000 >= 1) then begin writeln ('Неверный ввод'); halt; end else begin writeln ((a mod 10) + (a div 100) + ((a mod 100) div 10)); end end.
Если удалить из костюма элемент брюки, то он уже не будет костюмом. Если удалить из автомобиля элемент колёса, то без колёс автомобиль не поедит. Если удалить из компьютера элемент процессор, то он не будет больше компьютером. Если удалить из городской телефонной сети элемент электричество в городе, то сеть не будет ловить. Если удалить из школы элемент учитель, то это не будет школой. Если удалить из государства Президента, то кто будет править государством? Сущ.:Костюм, автомобиль, компьютер,школа. Несущ.:Городск. телеф. связь, государство.
Сначала надо избавиться от ошибок (пункт №3) иначе не сможем выполнить 1 и 2 пункт задания. Исправляем if N mod 10 k:=N mod 10; на if (N mod 10 < k) then k:=N mod 10; Исправляем N:N div 10; на N:= N div 10;
После исправления ошибок при вводе 537 получим 3 Программа будет работать правильно для любого числа, у которого вторая цифра слева меньше первой цифры, например: 7193
Чтобы программа работала правильно для всех чисел надо изменить это: while N > 10 do на while N > 0 do
После всех исправлений код программы стал таким: var N, k: integer; begin readln(N); k := 9; while N > 10 do begin if (N mod 10 < k) then k := N mod 10; N := N div 10; end; write(k) end.
begin
read (a);
if (a mod 10<1) or (a div 100 < 1) or ((a mod 100) div 10 < 1) or (a div 1000 >= 1) then
begin
writeln ('Неверный ввод');
halt;
end else
begin
writeln ((a mod 10) + (a div 100) + ((a mod 100) div 10));
end
end.