Лабораторная работа № 3.
Рекурсия

Разработать две рекурсивные функции для обработки одномерного динамического массива. В первой функции реализовать линейную рекурсию, во второй – каскадную. Функции реализовать в отдельном модуле.

Ввод всех данных осуществляется из файла, вывод – в файл. Имена файлов передаются через параметры программы.

В спецификации для каждой функции нарисовать дерево рекурсивных вызовов для массива из 7 элементов.

Описание

  1. Если в одномерном массиве a из n элементов есть хотя бы один положительный элемент, найти сумму тех выражений, вычисляемых по формуле a[i] ^ 2, которые меньше заданного числа.
  2. Если в одномерном массиве a из n элементов нет положительных элементов, найти произведение тех множителей, вычисляемых по формуле a[i] ^ 2, которые больше заданного числа.
  3. Если в одномерном массиве a из n элементов есть хотя бы один элемент, равный заданному значению, найти значение минимального элемента массива.
  4. Если в одномерном массиве a из n элементов нет элементов, равных заданному значению, найти значение максимального элемента массива.
  5. Если в одномерном массиве a из n элементов есть хотя бы один чётный элемент, найти количество отрицательных элементов массива.
  6. Если в одномерном массиве a из n элементов нет чётных элементов, найти количество положительных элементов массива.
  7. Если в одномерном массиве a из n элементов есть хотя бы один элемент, больший заданного значения, найти значение минимального по модулю элемента массива.
  8. Если в одномерном массиве a из n элементов нет элементов, больших заданного значения, найти значение максимального по модулю элемента массива.
  9. Если в одномерном массиве a из n элементов есть хотя бы один элемент, модуль которого равен заданному значению, найти сумму отрицательных элементов массива.
  10. Если в одномерном массиве a из n элементов нет элементов, модуль которого равен заданному значению, найти сумму положительных элементов массива.
  11. Если в одномерном массиве a из n элементов есть хотя бы один элемент, попадающий в заданный диапазон, найти значение минимального выражения a[i] ^ 2.
  12. Если в одномерном массиве a из n элементов нет элементов, попадающих в заданный диапазон, найти значение максимального выражения a[i] ^ 2.
  13. Если в одномерном массиве a из n элементов есть хотя бы один элемент, модуль которого попадает в заданный диапазон, найти количество элементов массива, для которых выполняется условие ai > i.
  14. Если в одномерном массиве a из n элементов нет элементов, модуль которого не попадает в заданный диапазон, найти сумму элементов массива, для которых выполняется условие ai > i.
  15. Если в одномерном массиве a из n элементов есть хотя бы один элемент, кратный заданному значению, найти сумму элементов массива, кратных заданному числу.
  16. Если в одномерном массиве a из n элементов нет элементов, кратных заданному значению, найти произведение элементов массива, кратных другому заданному числу.
  17. Если в одномерном массиве a из n элементов есть хотя бы один элемент, модуль которого больше заданного значения, найти значение минимального выражения sqrt(abs(a[i])).
  18. Если в одномерном массиве a из n элементов нет элементов, модуль которых больше заданного значения, найти значение максимального выражения sqrt(abs(a[i])).
  19. Если в одномерном массиве a из n элементов нет отрицательных элементов, найти количество элементов массива, для которых выполняется условие |ai| < i2.
  20. Если в одномерном массиве a из n элементов есть хотя бы один отрицательный элемент, найти произведение элементов массива, для которых выполняется условие |ai| < i2.
  21. Если в одномерном массиве a из n элементов есть хотя бы один нечётный элемент, найти количество элементов массива, попадающих в заданный диапазон.
  22. Если в одномерном массиве a из n элементов нет нечётных элементов, найти сумму элементов массива, попадающих в заданный диапазон.
  23. Если в одномерном массиве a из n элементов есть хотя бы один элемент, меньший заданного значения, найти значение минимального выражения ai / (i + 1).
  24. Если в одномерном массиве a из n элементов нет элементов, меньших заданного значения, найти значение максимального выражения ai / (i + 1).
  25. Если в одномерном массиве a из n элементов есть хотя бы один элемент, не попадающий в заданный диапазон, найти сумму элементов массива, не кратных заданному числу.
  26. Если в одномерном массиве a из n элементов нет элементов, не попадающих в заданный диапазон, найти произведение элементов массива, не кратных заданному числу.
  27. Если в одномерном массиве a из n элементов есть хотя бы один элемент, не кратный заданному значению, найти количество элементов массива, для которых выполняется условие sqrt(abs(a[i])) < i.
  28. Если в одномерном массиве a из n элементов нет элементов, не кратных заданному значению, найти сумму элементов массива, для которых выполняется условие sqrt(abs(a[i])) < i.
  29. Если в одномерном массиве a из n элементов есть хотя бы один элемент, модуль которого меньше заданного значения, найти произведение тех множителей, вычисляемых по формуле ai / (i + 1), которые больше заданного числа.
  30. Если в одномерном массиве a из n элементов нет элементов, модуль которых меньше заданного значения, найти сумму тех выражений, вычисляемых по формуле ai / (i + 1), которые меньше заданного числа.
  31. Если в одномерном массиве a из n элементов есть хотя бы один элемент, модуль которого не попадает в заданный диапазон, найти количество элементов массива, для которых выполняется условие a[i] ^ 2 > i.
  32. Если в одномерном массиве a из n элементов нет элементов, модуль которого попадает в заданный диапазон, найти сумму элементов массива, для которых выполняется условие a[i] ^ 2 > i.
  33. Если в одномерном массиве a из n элементов есть хотя бы один элемент, модуль которого не равен заданному значению, найти значение минимального выражения ai × (i + 1).
  34. Если в одномерном массиве a из n элементов нет элементов, модуль которого не равен заданному значению, найти значение максимального выражения ai × (i + 1).
  35. Если в одномерном массиве a из n элементов есть хотя бы один элемент, не равный заданному значению, найти сумму элементов массива, для которых |ai| меньше заданного числа.
  36. Если в одномерном массиве a из n элементов нет элементов, не равных заданному значению, найти произведение элементов массива, для которых |ai| меньше заданного числа.