По каналу связи передаётся последовательность положительных целых чисел. Все числа не превышают 1000, их количество известно, но может быть очень велико. Затем передаётся контрольное значение — наибольшее число R, удовлетворяющее следующим условиям:
1) R — произведение двух различных переданных элементов последовательности («различные» означает, что не рассматриваются квадраты переданных чисел, произведения различных, но равных по величине элементов допускаются);
2) R не делится на 10.
В результате помех при передаче как сами числа, так и контрольное значение могут быть искажены.
Напишите программу которая будет проверять правильность контрольного значения. Программа должна напечатать отчёт по следующей форме:
Получено чисел: …
Принятое контрольное значение: …
Вычисленное контрольное значение: …
Контроль пройден (или Контроль не пройден)
Если удовлетворяющее условию контрольное значение определить невозможно, вычисленное контрольное значение не выводится, но выводится фраза «Контроль не пройден».
Перед текстом программы кратко опишите алгоритм решения и укажите язык программирования и его версию.
Вам предлагаются два задания, связанные с этой задачей: задание А и задание Б. Вы можете решать оба задания А и Б или одно из них по своему выбору.
Итоговая оценка выставляется как максимальная из оценок за задания А и Б. Если решение одного из заданий не представлено, то считается, что оценка за это задание составляет 0 баллов.
Задание Б является усложненным вариантом задания А, оно содержит дополнительные требования к программе. Перед программой укажите версию языка программирования.
А. Напишите на любом языке программирования программу для решения поставленной задачи, в которой входные данные будут запоминаться в массиве, после чего будут проверены все возможные пары элементов.
Обязательно укажите, что программа является решением задания А.
Максимальная оценка за выполнение задания А – 2 балла.
Б. Напишите программу для решения поставленной задачи, которая будет эффективна как по времени, так и по памяти (или хотя бы по одной из этих характеристик).
Программа считается эффективной по времени, если время работы программы пропорционально количеству элементов последовательности N, т. е. при увеличении N в k раз время работы программы должно увеличиваться не более чем в k раз. Обязательно укажите, что программа является решением задания Б.
Входные данные
В первой строке указывается количество чисел N. В каждой из последующих
N строк записано одно натуральное число, не превышающее 1000.
В последней строке записано контрольное значение.
Пример входных данных:
5
60
7
8
15
20
105
Выходные данные
Программа должна напечатать отчёт по образцу, приведённому в условии.
Пример выходных данных для приведённого выше примера входных данных:
Получено чисел: 5
Принятое контрольное значение: 105
Вычисленное контрольное значение: 105
Контроль пройден
По каналу связи передаётся последовательность положительных целых чисел. Все числа не превышают 1000, их количество известно, но может быть очень велико. Затем передаётся контрольное значение — наибольшее число R, удовлетворяющее следующим условиям:
1) R — произведение двух различных переданных элементов последовательности («различные» означает, что не рассматриваются квадраты переданных чисел, произведения различных, но равных по величине элементов допускаются);
2) R не делится на 15.
Гарантируется, что такое число R в последовательности будет найдено.
В результате помех при передаче как сами числа, так и контрольное значение могут быть искажены.
Напишите эффективную, в том числе по используемой памяти, программу которая будет проверять правильность контрольного значения. Программа должна напечатать отчёт по следующей форме:
Получено чисел: …
Принятое контрольное значение: …
Вычисленное контрольное значение: …
Контроль пройден (или Контроль не пройден)
Если удовлетворяющее условию контрольное значение определить невозможно, вычисленное контрольное значение не выводится, но выводится фраза «Контроль не пройден».
Перед текстом программы кратко опишите алгоритм решения и укажите язык программирования и его версию.
Входные данные
В первой строке указывается количество чисел N. В каждой из последующих N строк записано одно натуральное число, не превышающее 1000. В последней строке записано контрольное значение.
Пример входных данных:
5
60
100
8
9
90
800
Выходные данные
Программа должна напечатать отчёт по образцу, приведённому в условии.
Пример выходных данных для приведённого выше примера входных данных:
Получено чисел: 5
Принятое контрольное значение: 800
Вычисленное контрольное значение: 800
Контроль пройден

