По каналу связи передается последовательность положительных чисел ,все числа не ?
По каналу связи передается последовательность положительных чисел ,все числа не ??ревышают 1000,их количество заранее неизвестно. Каждое число передается отдельно. Признаком конца передаваемой последовательности является число 0. После числа 0 передается контрольное значение- наибольшее число из последовательности,которое делится на 10. Напишите эффективную программу, которая получает последовательность чисел и следующие за ней признак конца и контрольное значение, а также проверяет правильность контрольного значения. Программа должна напечатать отчет следующего вида:
Получено ...чисел
Полученное контрольное значение:...
Вычесленное контрольное значение:...
Контроль пройден (или- контроль не пройден)
Ответ(ы) на вопрос:
Гость
// PascalABC.NET 3.1, сборка 1201 от 18.03.2016
begin
var k:=0;
var n:=ReadInteger();
var nmax:=0;
while n<>0 do begin
Inc(k);
if n mod 10 = 0 then
if n>nmax then nmax:=n;
n:=ReadInteger()
end;
var cntrl:=ReadInteger();
Writeln('Получено ',k,' чисел');
Writeln('Полученное контрольное значение: ',cntrl);
Writeln('Вычисленное контрольное значение: ',nmax);
if cntrl=nmax then Writeln('Контроль пройден')
else Writeln('Контроль не пройден')
end.
Тестовое решение:
53
16
40
9
10
32
74
0
40
Получено 7 чисел
Полученное контрольное значение: 40
Вычисленное контрольное значение: 40
Контроль пройден
Не нашли ответ?
Похожие вопросы