На вход программы поступает натуральное число, не превышающее 10
9. Нужно написать программу, которая выводит на экран максимальную цифру числа, меньшую 5. Если в числе нет цифр, меньших 5, требуется на экран вывести «NO». В приведённой программе есть ошибки.
Pascal |
С++ |
var N, d, m: longint;
begin
readln(N);
m := N mod 10;
while N > 0 do begin
d := N mod 10;
if d < 5 then
if d > m then m := d;
N := N div 10;
end;
if m = 0 then
writeln('NO')
else writeln( m )
end. |
#include<iostream>
using namespace std;
int main()
{
int N, d, m;
cin>>N;
m = N % 10;
while(N>0)
{
d=N%10;
if (d<5)
if (d>m) m=d;
N=N/10;
}
if m=0 cout<<"NO";
else cout<<m;
return 0;
}
|
Последовательно выполните следующее.
1. Напишите, что выведет эта программа при вводе числа 157.
2. Укажите наибольшее трёхзначное значение входной переменной
n, при вводе которого программа выведет правильный ответ. Укажите это ответ.
3. Найдите в программе все ошибки (их может быть одна или несколько). Для каждой ошибки выпишите строку, в которой она допущена, и приведите эту же строку в исправленном виде.