Написать программу на языке Pascal По каналу связи передается последовательность положительных целых чисел, все числа не превышают 1000, их количество заранее неизвестно. Каждое число передается отдельно. Признаком конца передаваемой последовательности является число 0. После числа 0 передается контрольное значение – наибольшее число из последовательности, которое делится на 10. Напишите эффективную программу, которая получает последовательность чисел и следующие за ней признак конца и контрольное значение, а также проверяет правильность контрольного значения. Программа должна напечатать отчет следующего вида: Получено .. чисел Полученное контрольное значение: …. Вычисленное контрольное значение:… Контроль пройден (или – контроль не пройден)
program CheckControlValue; var num, controlValue, maxNum, receivedControlValue, count: integer; begin count := 0; maxNum := 0; repeat read(num); count := count + 1; if num <> 0 then begin if num > maxNum then maxNum := num; end else begin read(receivedControlValue); writeln('Получено ', count - 1, ' чисел'); writeln('Полученное контрольное значение: ', receivedControlValue); writeln('Вычисленное контрольное значение: ', maxNum); if maxNum mod 10 = 0 then writeln('Контроль пройден') else writeln('Контроль не пройден'); end; until num = 0; end.
Программа считывает последовательность чисел, находит наибольшее число из последовательности, проверяет контрольное значение и выводит отчет о контроле.
var
num, controlValue, maxNum, receivedControlValue, count: integer;
begin
count := 0;
maxNum := 0;
repeat
read(num);
count := count + 1;
if num <> 0 then
begin
if num > maxNum then
maxNum := num;
end
else
begin
read(receivedControlValue);
writeln('Получено ', count - 1, ' чисел');
writeln('Полученное контрольное значение: ', receivedControlValue);
writeln('Вычисленное контрольное значение: ', maxNum);
if maxNum mod 10 = 0 then
writeln('Контроль пройден')
else
writeln('Контроль не пройден');
end;
until num = 0;
end.
Программа считывает последовательность чисел, находит наибольшее число из последовательности, проверяет контрольное значение и выводит отчет о контроле.