1. Napisz funkcję rekurencyjną o nagłówku
int cyfra(long n,int k)
która zwraca wartość
k
-tej cyfry liczby dziesiętnej
n
licząc od prawej (tj. od najmniej
znaczącej cyfry). Dla
n=256894
i
k=3
funkcja powinna zwrócić
8
.
2. Napisz funkcję rekurencyjną o nagłówku
bool NieDzieliSie(int n, int k)
która zwraca wartość
true
, jeżeli
n
nie dzieli się przez żadną z liczb
2,3,4,...,k,
lub
wartość
false
, gdy
n
dzieli się przez którąś z tych liczb.
3. Napisz funkcję rekurencyjną wyświetlającą na ekranie trójkąt o zadanej
parametrem
n
długości podstawy, np. dla
n =3
ma zostać wyświetlony trójkąt
***
**
*
4. Funkcja
M
określona jest dla liczb naturalnych następującą zależnością rekurencyjną
M(1) = 3
M(2n) = 2 ·M(n) + 1
M(2n + 1) = 2 ·M(n) + 3
Napisz funkcję rekurencyjną, która oblicza wartość funkcji
M
.
5. Napisz funkcję rekurencyjną drukującą zawartość tablicy w kolejnych liniach. Parametrami
funkcji są tablica i liczba elementów.
6. Napisz funkcję sprawdzającą, czy wśród elementów tablicy są liczby ujemne.
7. Napisz rekurencyjną funkcję obliczającą sumę elementów tablicy.
8. Napisz rekurencyjną funkcję zwracającą najmniejszą liczbę w tablicy.
9. Napisać funkcję rekurencyjną, która przestawia elementy w tablicy w odwrotnej
kolejności (zmiany mają się dokonać w tej samej tablicy).
10. Napisz rekurencyjną wersję funkcji
double maxtab(double t[], int l, int p)
znajdującej największy element w tablicy t opierającą się na obserwacji, że maksimum z
tablicy to element większy z dwóch: maksimum z pierwszej połowy tablicy i maksimum z
drugiej połowy tablicy.