! не допускается использовать Delphi и Borland Pascal for Windows
КР1 вариант 2
Задача 1
Дана последовательность из не менее чем двух натуральных чисел, за которой следует 0. Вычислите сумму тех из них, порядковые номера которых – простые числа. Например, если вводили 1, 12, 8, 4, 50, 6, 77, 8, 9, 0, то номера выделенных чисел являются простыми числами (2, 3, 5, 7) и ответ равен 12 + 8 + 50 + 77 = 147.
Подсказка: используйте булевскую функцию для проверки, является номер простым числом или нет.
Задача 2
Даны целое n>2 и вещественные числа a1, b1, ..., an, bn (ai < bi). Рассматривая пары ai и bi как левые и правые концы отрезков на одной и той же прямой, определить концы отрезка, являющегося пересечением всех этих отрезков. Если такого отрезка нет, сообщить об этом. Например, если n=3 и a1 = 0, b1= 10, a2 = 1, b2 = 11, a3 = –1, b3 = 5, то результатом будет отрезок [1, 5].
Задача 3
В заданной последовательности чисел длиной n определить длину самой большой упорядоченной по возрастанию подпоследовательности соседних элементов.
Например, если вводили 1, 12, 8, 4, 50, 6, 22, 77, 8, 9, 0, то ответ равен 3 (это длина подпоследовательности 6, 22, 77).
КР2 вариант 1
Задача 1.
Даны целые числа a1, a2, ..., an . Все члены последовательности с четными номерами, предшествующие первому по порядку члену со значением max (a1, a2, ..., an), домножить на max (a1, a2, ..., an).
Задача 2
Элемент матрицы назовем седловой точкой, если он является наименьшим в своей строке и одновременно наибольшим в своем столбце или, наоборот, является наибольшим в своей строке и наименьшим в своем столбце. Для заданной целой матрицы размером NxM напечатать индексы всех ее седловых точек.
Указание: определите булевскую функцию f(i,j) для опреде-ления, является ли данный элемент с индексами i и j седло-вым.
Задача 3
Для заданных трех строк S1, S2 и S3 определить, какая из них является палиндромом. Назовем строку палиндромом, если его запись читается одинаково с начала и с конца (как, например, ‘казак’, ‘алла’, ‘fffjjjfff’). Указание: определить булевскую функцию f(s) для проверки, является ли строка s палиндромом. Результатом должен быть ответ «да» или «нет».
Задача 4
Спортлото: 6 из 49. Составьте программу, в которой загадываются, иначе говоря, создаются 6 разных чисел, значения которых никак не связаны друг с другом, а величина лежит в интервале от 1 до 49.
Указание. Для решения задачи используйте множества. Выражение random(49)+1 дает случайное целое число в интервале от 1 до 49.
КР3 вариант 1
Задача 1
type ряд = file of integer;
Описать процедуру p(f,g) от двух файлов типа ряд, которая в пустой файл f переписывает положительные элементы файла g.
Указание: введите файл g (последний элемент равен 0). Вы-полните процедуру p(f,g). Распечатайте файл f.
Задача 2
Пусть для целого n>0 функция s(n) равна сумме цифр числа n. Дано m>0. Упорядочить все числа n от 1 до m в порядке невозрастания значений s(n). Указание: ис-пользовать только один массив длиной m.
Задача 3
Напишите рекурсивную подпрограмму, которая печатает в обратном порядке заданную строку.
Задача 4
Напишите программу для графической иллюстрации сортировки массива алгоритмом простого выбора. Массив изобразите в виде диаграммы – каждый элемент массива представляется в виде столбика, высота которого пропорциональна значению элемента. Визуализация сортировки сводится к показу массива после каждого перемещения элементов.
ОТЧЕТ: на каждую контрольную работу: задание, описание алгоритма, блоксхема, тестирование и листинг