Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
6
Добавлен:
19.08.2022
Размер:
82.43 Кб
Скачать

Лабораторная работа № 6. Обработка числовых последовательностей.

Написать программу, последовательно выполняющую перечисленные ниже задачи. Предусмотреть печать приглашения на ввод (строки, поясняющей пользователю, какие действия от него ждет программа) и информативный вывод данных.

Задание 1. Длина последовательности целых чисел – случайное число от 10 до 30. Последовательность генерируется случайным образом или вводится с клавиатуры по желанию пользователя. Обработать эту последовательность без использования массива в соответствии с номером варианта. При вводе или генерации последовательность записать в файл Input.txt (первая компонента файла – количество элементов последовательности, остальные компоненты представляют собой элементы последовательности).

Задание 2. Из файла Input.txt, подготовленного в процессе выполнения Задания 1, вводится последовательность целых чисел известной длины (эта длина записана на первом месте в файле). Обработать эту последовательность без использования массива в соответствии с номером варианта. В процессе обработки записать результаты в файл Output.txt (все компоненты представляют собой элементы вновь получаемой последовательности).

Задание 3. Из файла Output.txt, подготовленного в процессе выполнения Задания 2, вводится последовательность целых чисел. Обработать эту последовательность без использования массива в соответствии с номером варианта. Результаты обработки вывести на экран.

Внимание!!!

Файлы после записи необходимо закрывать. Для разных заданий лучше использовать файловые потоки с разными именами.

Для того чтобы обрабатывать пары чисел, необходимо определить 2 переменные: например, A_old и A. В процессе обработки используются оба значения, затем происходит переприсвоение A_old = A; и вводится очередное, текущее значение переменной A. Необходимо следить, чтобы после прочтения последнего числа из файла циклический процесс завершался.

Соответственно, чтобы обрабатывать тройки чисел, необходимо определить 3 переменные: например, A_old, A и A_next. В процессе обработки используются все три значения, затем происходит переприсвоение A_old = A; A = A_next; и вводится очередное, текущее значение переменной A_next.

Варианты заданий

Вари- ант

Условия задания 1

Условия задания 2

Условия задания 3

Сообщить порядковый номер и значение числа, превосходящего все остальные по абсолютной величине

В выходную последовательность записать только те числа, которые больше своих соседей (если первое число больше второго, то его надо записать, если второе число больше первого и третьего – надо записать второе число, если последнее больше предпоследнего – надо записать последнее число).

Найти среднее арифметическое элементов последовательности

Найти количество положительных, отрицательных и нулевых элементов в этой последовательности.

В выходную последовательность записать только те числа, которые вместе с соседями составляют число N (если первое число в сумме со вторым даёт N, записываем первое число, если первое, второе и третье числа в сумме дают N, записываем второе число, если последнее и предпоследнее числа в сумме дают N, записываем последнее число)

Найти минимальное число и его порядковый номер

Найти среднее арифметическое положительных элементов данной последовательности.

В выходную последовательность записать только те числа, которые меньше суммы своих соседей (если первое число меньше второго, записываем первое число; если второе число меньше суммы первого и третьего числа, записываем второе число, если последнее меньше предпоследнего, записываем последнее число)

Найти максимальное чётное число и его порядковый номер, при отсутствии чётных чисел сообщить об этом

Найти среднее арифметическое элементов последовательности, принадлежащих диапазону [a; b]

В выходную последовательность записывать суммы соседних элементов (на 1 место – сумму первого и второго, на второе – сумму второго и третьего, на последнее – сумму предпоследнего и последнего).

Найти первое отрицательное число и сообщить порядковый номер, в случае отсутствия отрицательных чисел сообщить об этом.

Найти среднее арифметическое элементов последовательности, заканчивающихся цифрой «7».

В выходную последовательность записать только числа, равные среднему арифметическому своих соседей (если первое число равно второму – записываем первое число, если второе число равно полусумме первого и третьего – записываем второе число, если последнее число равно предпоследнему – записываем последнее число).

Найти полусумму первого и последнего положительных чисел, в случае отсутствия положительных чисел сообщить об этом.

Указать пары соседних элементов данной последовательности {ai}, удовлетворяющих условию ai < ai+1 и количество таких пар

В выходную последовательность записать только числа, заканчивающиеся цифрой «3»

Найти среднее арифметическое положительных элементов последовательности

Сообщить, имеется ли среди введённых чисел три подряд идущих элемента, которые могут являться длинами сторон треугольника и количество таких троек.

В выходную последовательность записать только каждое третье число

Найти минимальное положительное число и его порядковый номер, в случае отсутствия положительных числе сообщить об этом

Указать пары соседних элементов данной последовательности, имеющих противоположные знаки и количество таких пар.

В выходную последовательность записать только числа, по абсолютной величине превосходящие заданное число N

Найти максимальное двузначное число и его порядковый номер, в случае отсутствия двузначных чисел сообщить об этом

Указать соседние элементы, имеющие одинаковую чётность (оба чётные или оба нечётные), если таковых не обнаружится, вывести соответствующее сообщение.

В выходную последовательность записать только числа, кратные N или являющиеся делителями числа N.

Найти полусумму минимума и максимума.

Указать те из чисел, которые в сумме с предыдущим и последующим элементами составляют N, если таковых не обнаружится, вывести соответствующее сообщение.

В выходную последовательность записать только нечётные двузначные числа (отрицательные числа не рассматривать).

Найти наименьшее из чисел, расположенных на чётных местах и сообщить его индекс.

Найти количество элементов последовательности, кратных 5, которые по абсолютной величине не превосходят N (число элементов последовательности).

В выходную последовательность записать только те числа, которые больше предыдущего, но меньше последующего (первое число записывается при условии, что оно меньше второго, последнее – при условии, что оно больше предпоследнего)

Найти полусумму первого и последнего положительных чисел, в случае отсутствия чисел сообщить об этом.

Указать пары соседних элементов данной последовательности, среднее арифметическое которых равно N и количество таких пар.

В выходную последовательность записать только те числа, которые делятся на свою последнюю цифру.

Найти первое отрицательное число и сообщить порядковый номер, в случае отсутствия отрицательных чисел сообщить об этом.

Найти среднее арифметическое элементов последовательности, расположенных после первого нулевого элемента

В выходную последовательность записать только положительные числа, кратные трём

Найти полусумму минимума и максимума.

Сообщить, имеется ли среди введённых чисел хотя бы три подряд идущих элемента, образующих возрастающую последовательность.

В выходную последовательность записать только числа, по абсолютной величине не превосходящие заданное число N

Найти наибольшее из чисел, расположенных на нечётных местах и сообщить его индекс.

Указать пары соседних элементов данной последовательности, разность между которыми равна 2 и количество таких пар.

В выходную последовательность записать только каждое второе нечётное число

Найти максимальное число и его порядковый номер