Тема 0.3. Повторение: обработка последовательностей чисел
В этом занятии необходимо обрабатывать последовательности чисел, которые пользователь вводит с клавиатуры (не использовать массивы). Возможно два варианта.
-
Известно количество элементов последовательности. В этом случае пользователь сначала вводит неотрицательное целое число N — это количество, а затем вводит сами N чисел.
-
Количество элементов последовательности заранее неизвестно, но задан признак завершения последовательности. В большинстве наших задач признаком завершения последовательности является число 0 (оно не считается элементом последовательности). Это значит, что пользователь вводит неотрицательные числа, а как только он вводит 0, чтение прекращается.
Задачи
-
{
0.3 балла
} [task-01-seq-N.pas
] Дано целое число N (N ≥ 0) и последовательность из N целых чисел. Найти сумму всех элементов этой последовательности.Пример (после точки с запятой указаны числа последовательности)
N = 0 >>> Sum = 0 N = 1; -5 >>> Sum = -5 N = 3; -3, 0, 15 >>> Sum = 12
-
{
0.3 балла
}[task-02-seq-N.pas
] Дано целое число N (N ≥ 0) и последовательность из N целых чисел. Найти количество отрицательных чисел в этой последовательности.Приведите лог программы не менее, чем для двух входных наборов: один набор не должен содержать отрицательных чисел — ответ равен 0, второй набор должен содержать отрицательные числа.
-
{
0.4 балла
} [task-03-seq-0.pas
] Дана последовательность вещественных чисел, признак завершения которой — число 0 (оно не считается элементом последовательности). Найти сумму всех положительных элементов этой последовательности.Пример
0 >>> Sum = 0 1.2, 0 >>> Sum = 1.2 -2.5, 4.64, 0 >>> Sum = 4.64 -5, -1.17, 0 >>> Sum = 0
-
{
0.4 балла
} [task-04-seq-0.pas
] Дана последовательность целых чисел, признак завершения которой — число 0 (оно не считается элементом последовательности). Вывести номера чётных чисел последовательности (числа нумеровать с 1). Если последовательность не содержит чётных элементов, выводить ничего не нужно.Пример
0 >>> <empty> 1, -5, -13, 0 >>> <empty> -2, 3, 25, 8, -3, 0 >>> 1, 4 6, 2, -14, 0 >>> 1, 2, 3
Указание. Числа последовательности следует вводить в одну строку через пробел, завершая ввод последовательности нажатием
Enter
. Выводить нужные значения также рекомендуется в одну строку, разделяя их пробелом или знаком пунктуации. -
{
0.5 балла
} [task-05-seq-N.pas
] Даны целые числа N (N ≥ 0) и K, а также последовательность из N целых чисел. Найти номер первого элемента последовательности, большего K. Если таких элементов нет, вывести -1.Пример
N = 5, K = 100; 4, -200, 200, 160, 15 >>> 3 N = 4, K = 100; 4, -29, 6, 30 >>> -1
-
{
0.5 баллов
} [task-06-seq-0.pas
] Дана последовательность целых чисел, признак завершения которой — число 0. По заданному числу K > 0 определить количество элементов последовательности, квадрат которых меньше K. -
{
0.8 баллов
} [task-09-seq-N.pas
] Дано целое число N (N ≥ 1) и последовательность из N вещественных чисел. Проверить, образует ли данный набор возрастающую последовательность. Если образует, то вывестиTrue
, если нет — вывестиFalse
. Последовательность чисел из одного элемента считается возрастающей.
Дополнительные задачи
-
[
Указание. Используйте значениеextra-task-01-seq-0.pas
] Дана последовательность целых чисел, признак завершения которой — число 0. Проверить, образует ли данный набор неубывающую последовательность. Если образует, то вывестиTrue
, если нет — вывестиFalse
. Пустая последовательность и последовательность чисел из одного элемента считаются неубывающими.integer.MinValue
в качестве «фиктивного» первого элемента последовательности.- Проверьте правильность вашей программы минимум на трёх собственных примерах, приведите лог работы программы на этих примерах.
-
[
extra-task-02-seq-N.pas
] Дано целое число N > 2 и последовательность из N целых чисел — значений некоторой величины, полученных в N опытах. Найти среднее значение этой величины.- При вычислении среднего значения не учитывать минимальное и максимальное из имеющихся в последовательности значений.
-
Если какое-то из экстремальных значений (минимум или максимум) встречается в последовательности более одного раза, не исключать его при подсчёте среднего.
-
Проверьте правильность вашей программы минимум на трёх собственных примерах, приведите лог работы программы на этих примерах.
-
[
extra-task-03-seq-0.pas
] Дана последовательность целых чисел, признак завершения которой — число 0. Вывести последний максимальный элемент последовательности среди кратных трём, а также его номер (номер в последовательности всех элементов). Если таких элементов нет, вывестиinteger.MinValue
и-1
.- Проверьте правильность вашей программы минимум на трёх собственных примерах, приведите лог работы программы на этих примерах.