Лабораторная работа №2.

РЕКУРСИЯ.

Каждая бригада должна выполнить 2 задачи. Ввод и печать данных сопровождать комментариями. Использовать внутреннюю цель. Для нахождения целого частного можно использовать операцию div, для нахождения остатка – операцию mod, для нахождения модуля – функцию abs.

Номер бригады

1

2

3

4

5

6

7

8

9

10

Номера задач

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

11

13

16

1.  Вывести на экран в порядке возрастания все четные числа из диапазона, границы которого вводятся с клавиатуры. Границы могут вводиться в произвольном порядке. Вывод должен осуществляться на прямом ходе рекурсии.

2.  Вывести на экран в порядке убывания все четные числа из диапазона, границы которого вводятся с клавиатуры. Границы могут вводиться в произвольном порядке. Вывод должен осуществляться на обратном ходе рекурсии.

3.  Вывести на экран в порядке возрастания все нечетные числа из диапазона, границы которого вводятся с клавиатуры. Границы могут вводиться в произвольном порядке. Вывод должен осуществляться на обратном ходе рекурсии.

4.  Вывести на экран в порядке убывания все нечетные числа из диапазона, границы которого вводятся с клавиатуры. Границы могут вводиться в произвольном порядке. Вывод должен осуществляться на прямом ходе рекурсии.

5.  Найти сумму всех целых чисел из диапазона, границы которого вводятся с клавиатуры. Границы могут вводиться в произвольном порядке. Суммирование должно осуществляться на обратном ходе рекурсии.

НЕ нашли? Не то? Что вы ищете?

6.  Найти сумму цифр целого числа, вводимого с клавиатуры. Суммирование должно осуществляться на обратном ходе рекурсии.

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

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

9.  Найти минимальную цифру в целом числе, вводимом с клавиатуры. Все сравнения должны выполняться на обратном ходе рекурсии.

10.  Возвести целое число в целую степень. Число и степень вводятся с клавиатуры. Все умножения должны выполняться на обратном ходе рекурсии.

11.  Сформировать новое число – перевод десятичного натурального числа в
p-ичное (десятичное число и основание p, 2£p£9 вводятся с клавиатуры). Искомое число формировать на обратном ходе рекурсии.

12.  Найти цифровой корень натурального числа, вводимого с клавиатуры. Цифровой корень находится следующим образом: суммируем цифры исходного числа, затем цифры получившегося числа и т. д. до тех пор, пока не получим цифру. Например, цифровой корень числа 24186 равен 3, т. к. 2+4+1+8+6=21, 2+1=3.

13.  Найти наибольший общий делитель двух натуральных чисел, вводимых с клавиатуры, с помощью алгоритма Евклида (Большее из чисел заменяется разностью этих чисел. Этот процесс повторяется до тех пор, пока не останется одно ненулевое число. Это число и будет наибольшим общим делителем).

14.  Проверить, является ли введенное с клавиатуры натуральное число простым.

15.  Определить, сколько вычитаний будет выполнено в следующем алгоритме: из натурального числа вычли сумму цифр, из получившегося числа вычли сумму его цифр и т. д. до тех пор, пока не получим 0. Например, для числа 38 будет выполнено 4 вычитания, 38-(3+8)=27, 27-(2+7)=18, 18-(1+8)=9, 9-9=0.

16.  Сформировать новое число – перевод целого p-ичного числа (2£p£9) в десятичное. p-ичное число и основание системы счисления вводятся с клавиатуры.

17.  Найти наименьшее общее кратное двух натуральных чисел, вводимых с клавиатуры (НОК(a, b)=(a×b)/НОД(a, b)). НОД(a, b) – наибольший общий делитель найти с помощью алгоритма Евклида (Большее из чисел заменяется разностью этих чисел. Этот процесс повторяется до тех пор, пока не останется одно ненулевое число. Это число и будет наибольшим общим делителем).