rekurencja ćw
Algorytmy i struktury danych
Lista Ćwiczeń
1 Zaprojektować algorytm z użyciem rekurencji, który odwróci tablicę liczb całkowitych. Implementację algorytmu zrealizować w języku C.
2 Zaprojektować algorytm, z użyciem rekurencji, rozwiązujący problem poszukiwania zadanej liczby x w tablicy, która jest posortowana od wartości minimalnych do maksymalnych. Implementację algorytmu zrealizować w języku C.
3 Napisz funkcję wczytującą w sposób rekurencyjny liczby typu double
i wypisującą je na ekran z komentarzem: ''Jest dodatnia'' lub ''Jest ujemna''.
4 Napisz funkcję obliczającą w sposób rekurencyjny największy wspólny dzielnik dla dwóch liczb całkowitych nieujemnych.
5 Napisać funkcję rekurencyjną, która otrzymując liczbę całkowitą dodatnią wypisze jej reprezentację binarną. Należy wykorzystać znany algorytm dzielenia przez podstawę systemu.
6 Podaj rekurencyjną definicje funkcji void piramida(int level); której
zadaniem jest narysowanie na ekranie następującej piramidy:
*****
****
***
**
*
7 Dany jest trójkąt Pascala. Jeśli ktoś nie wie, to trójkąt Pascala wygląda tak (dla 5 poziomów):
|
1 |
1 |
1 |
|
|
|
|
|
|
||
|
1 |
2 |
1 |
|
|
1 |
3 |
3 |
|
1 |
|
1 |
4 |
6 |
4 |
1 |
|
Napisać funkcję rekurencyjną, która dla podanej wysokości rysuje Trójkąt Pascala.
8 Napisać funkcję rekurencyjną, która oblicza następująco zdefiniowane sumy: o H(n) = 1+1/2 +1/3+1/4+...+1/n, dla n>0
o H(n) = 1+1/4 +1/9+1/16+...+1/n2 dla n>0 o H(n) = 1+2+3+...+n, dla n>0
o H(n) = 2n dla n≥0
o H(n) =n(n+1)(2n+1)/6 dla n>0