1. Znajdowanie miejsca zerowego funkcji metodą bisekcji. Matematyczna funkcja f ma być określona w programie w oddzielnej funkcji języka C (tak, aby moŝna było łatwo ją zmieniać). Przykładowa funkcja to: f() = 2 * sin( ln ). Uwaga! Dla =0 funkcja jest nieokreślona. ( * * f ) = 0, to szukane miejsce zerowe. f C[ a, b] - funkcja f() jest ciągła na przedziale [a,b], ( a) * f ( b) < 0 f - Na krańcach przedziału wartości funkcji mają róŝne znaki (funkcja jest monotoniczna) a+ b Kolejne przybliŝenia: = 2 f ( ) = 0 > STOP f ( ) f ( a) < 0 > b = f ( ) f ( a) > 0 > a = Warunek stopu: * ( k 1) b a ξ k 2 ξ, gdzie ξ - to określona dokładność obliczeń b a k log 2 ( ) ξ
2. Znajdowanie miejsca zerowego funkcji metodą stycznych (Newtona). Matematyczna funkcja f (ciągła i róŝniczkowalna) oraz jej pochodna ma być określona w programie w oddzielnej funkcji języka C (tak, aby moŝna było łatwo ją zmieniać). Przykładowa funkcja to: f() = 2 * sin( ln ). Uwaga! Dla =0 funkcja jest nieokreślona. f ( * ) = 0, Warunek stopu: * to szukane miejsce zerowe. ( k 1) (0) - przybliŝenie początkowe ( k + 1) f ( ) = f ( ) ξ, gdzie ξ - to określona dokładność obliczeń f ( ) = tg( α), gdzie α - nachylenie stycznej do wykresu funkcji w punkcie (k )
3. Znajdowanie miejsca zerowego funkcji metodą regula-falsi. Matematyczna funkcja f ma być określona w programie w oddzielnej funkcji języka C (tak, aby moŝna było łatwo ją zmieniać). Przykładowa funkcja to: f() = 2 * sin( ln ). Uwaga! Dla =0 funkcja jest nieokreślona. ( * * f ) = 0, to szukane miejsce zerowe. f C[ a, b] - funkcja f() jest ciągła na przedziale [a,b], ( a) * f ( b) < 0 f - Na krańcach przedziału wartości funkcji mają róŝne znaki (funkcja jest monotoniczna) Kolejne przybliŝenia: f ( ) = 0 > ( ) k STOP f ( ) f ( a) < 0 > b = f ( ) f ( a) > 0 > a = af ( b) bf ( a) = f ( b) f ( a) Warunek stopu: ( k 1) ξ, gdzie ξ - to określona dokładność obliczeń Warto stosować tę metodę, gdy wartości na krańcach przedziału znacznie się róŝnią.
4. Obliczanie całki oznaczonej na przedziale [a, b] z funkcji f() metodą Newtona. Matematyczna funkcja f ma być określona w programie w oddzielnej funkcji języka C (tak, aby moŝna było łatwo ją zmieniać). f C[ a, b] - funkcja f() jest ciągła na przedziale [a,b], Przedział [a,b] dzielimy na m podprzedziałów o długości h=(b-a)/m. Od liczby m zaleŝy dokładność wyniku. m 1 m 1 h h 2h S ( f ) = 8 f ( a) + f ( b) + 2 f ( a + ih) + 3 [ f ( a + ih + 3) + f ( a + ih + 3 )] i= 1 i= 0 5. Obliczanie całki oznaczonej na przedziale [a, b] z funkcji f() metodą Simpsona. Matematyczna funkcja f ma być określona w programie w oddzielnej funkcji języka C (tak, aby moŝna było łatwo ją zmieniać). f C[ a, b] - funkcja f() jest ciągła na przedziale [a,b], Przedział [a,b] dzielimy na m podprzedziałów o długości h=(b-a)/m. Od liczby m zaleŝy dokładność wyniku. m 1 m h f ( a) + f ( b) S( f ) = + f ( a + ih) + 2 f ( a + ih 2 i= 1 i= 1 h 3 2)
6. Obliczanie pierwiastka z liczby całkowitej z zadaną dokładnością (n-liczb po przecinku. Porównanie wyniku z wynikiem funkcji SQRT. Przykład dla 29 Porównania: 1*1=1 2*2=4 3*3=9 4*4=16 5*5=25 ------------ (5.1)^2 6*6=36 > 29 (5.2)^2... (5.9)^2 itd. 7. Sortowanie przez wybór (selection sort). Mamy tablicę o długości n, więc indeks tablicy i=0,...,n-1. 1) Szukamy minimum z tablicy od indeksu i do końca. 2) Zamiana miejscami znalezionego min z elementem i-tym w tablicy. 3) Zwiększamy indeks i o jeden. Powrót do punktu 1).
8. Sortowanie przez wstawianie (insertion sort). Literatura, np. Algorytmy + struktury danych = programy Banachowski, Ryter 9. Sortowanie bąbelkowe (bubble sort). Porównania po dwa elementy i zamiana, jeśli nie stoją w kolejności sortowania. Tak po pierwszym przejściu tablicy na końcu (element n-1 ) znajdzie się element największy (lub najmniejszy). Później sortujemy juŝ bez ostatniego elementu. Itd. 10. Obliczenie wartości funkcji jako sumy częściowej szeregu McLaurina Wartości funkcji takich jak: sin, ep, cos, ln. Porównać z wynikiem standardowych funkcji z biblioteki matematycznej.
11. Przeliczanie liczb dziesiętnych na rzymskie (do 9999). 12. Rozkład liczby na czynniki pierwsze. 13. Rozwiązywanie układu równań liniowych z macierzą trójkątną dolną, Układ równań A=B, z macierzą trójkątną dolną. Elementy macierzy podawane są przez uŝytkownika na standardowym wejściu.
14. Histogram wylosowanych liczb. Sprawdzanie poprawności wbudowanego generatora liczb losowych (rand, randn). Stworzenie histogramu krotności pojawiania się poszczególnych liczb w wygenerowanym przy pomocy generatora zbiorze liczb całkowitych (wartości całkowite, np. z przedziału 0-10). Liczbę losowań, jak równieŝ przedział liczb całkowitych zadaje uŝytkownik programu. Istnieje równieŝ moŝliwość wyboru domyślnych wartości tych parametrów. Histogram moŝe być reprezentowany tekstowo np. jako tabelka.