По каналу связи передается последовательность положительных чисел ,все числа не превышают 1000,их количество заранее неизвестно. Каждое число передается отдельно. Признаком конца передаваемой последовательности является число 0...

По каналу связи передается последовательность положительных чисел ,все числа не превышают 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 Контроль пройден
Не нашли ответ?
Ответить на вопрос
Похожие вопросы