После окончания эксперимента передаётся контрольное значение
Условие
По каналу связи передаются положительные целые числа, не превышающие 1000 - результаты измерений, полученных в ходе эксперимента (количество измерений N известно заранее, гарантируется, что N > 2). После окончания эксперимента передаётся контрольное значение - наименьшее число R, удовлетворяющее следующим условиям.1. R - сумма двух различных переданных элементов последовательности («различные» означает, что нельзя просто удваивать переданные числа, суммы различных, но равных по величине элементов допускаются).2. R кратно 3.3. Если в последовательности нет двух чисел, сумма которых кратна 3, контрольное значение считается равным 1.В результате помех при передаче как сами числа, так и контрольное значение могут быть искажены.
Напишите эффективную, в том числе по используемой памяти, программу (укажите используемую версию языка программирования, например, Free Pascal 2.6.4), которая будет проверять правильность контрольного значения.
Программа должна напечатать отчёт по следующей форме:Вычисленное контрольное значение: …Контроль пройден (или Контроль не пройден) Перед текстом программы кратко опишите используемый вами алгоритм решения.
На вход программе в первой строке подаётся количество чисел N (N > 2). В каждой из последующих N строк записано одно натуральное число, не превышающее 1000. В последней строке записано контрольное значение. Пример входных данных:6100833145198427 Пример выходных данных для приведённого выше примера входных данных:Вычисленное контрольное значение: 27Контроль пройден
Формат задания
Решение по шагам
Как рассуждать
Сумма двух чисел может быть кратна 3 в двух случаях: либо оба слагаемых кратны 3, либо остаток от деления на 3 одного из них равен 1, а другого - 2.Программа, вычисляющая контрольное значение, читает все входные данные один раз, не запоминая их в массиве.
Осталось ещё 3 шага
Для прочитанного фрагмента входной…
Пример правильной и эффективной программы на…
Пример правильной и эффективной программы на…
Бесплатно · займёт минуту