Programowanie proceduralne
Laboratorium 3 – Funkcje, przekazywanie argumentów przez wartość i adres, przekazywanie tablic, rekurencja.
1. Napisz program, który prosi użytkownika o podanie liczby rzeczywistej x, a następnie oblicza i wyświetla wartość x2. Napisz funkcję, która podnosi argument do potęgi 2 (pobiera zmienną przez adres). Funkcja ma być typu void. Przykładowy efekt działania programu:
2. Napisz funkcję, która oblicza wartość trójmianu kwadratowego o podanych współczynnikach, dla wskazanego argumentu. Współczynniki powinny być zapisane w tablicy trójelementowej. W obliczeniach wykorzystaj schemat Hornera. Napisz program, który ilustruje działanie funkcji.
3. Napisz funkcję, która oblicza wartość wielomianu określonego stopnia, o podanych współczynnikach, dla wskazanego argumentu. Współczynniki powinny być zapisane w tablicy odpowiedniego rozmiaru. W obliczeniach wykorzystaj schemat Hornera.
Napisz program, który ilustruje działanie funkcji.
4. Napisz program, który prosi użytkownika o podanie liczby całkowitej dodatniej n.
Następnie oblicza sumę liczb naturalnych od 1 do n. Obliczenia powinny być wykonane w funkcji rekurencyjnej.
Przykładowy efekt działania programu:
5. Napisz program, który prosi użytkownika o podanie liczby całkowitej dodatniej n.
Następnie oblicza silnię liczby n. Obliczenia powinny być wykonane w funkcji rekurencyjnej.
Przykładowy efekt działania programu:
6. Przeanalizuj ile razy zostanie wywołana funkcja fib(n) (zdefiniowana na wykładzie) w trakcie obliczania fib(6). Następnie sformułuj algorytm iteracyjny obliczania fib(n).
Zaimplementuj funkcje obliczające n-ty wyraz ciągu Fiboncciego w wersji rekurencyjnej i iteracyjnej.
7. Napisz funkcję, która oblicza cosinus kąta pomiędzy wektorami w przestrzeni trójwymiarowej. W tym celu, zaimplementuj funkcje obliczające: iloczyn skalarny dwóch wektorów trójelementowych oraz długość wektora trójelementowego.
Współrzędne wektorów przechowuj w tablicach trójelementowych.
Karol Tarnowski Wrocław, 2019