Narzędzia użytkownika

Narzędzia witryny

A PCRE internal error occured. This might be caused by a faulty plugin

cw-6-rekurencja
A PCRE internal error occured. This might be caused by a faulty plugin

**To jest stara wersja strony!** ----

A PCRE internal error occured. This might be caused by a faulty plugin

==== Wskaźniki: definiowanie, operator & i dereferencji * ==== Należy w programie zdefiniować zmienne ''a'', ''b'' i ''x'' oraz dwie zmienne typu wskaźnikowego. Zmiennym ''a'' i ''b'' należy nadać przykładowe wartości początkowe. Do zmiennych wskaźnikowych należy podstawić adresy zmiennych ''a'' i ''b''. Do zmiennej ''x'' należy podstawić sumę wartości pamiętanych w ''a'' i ''b'', ale przy obliczaniu tej sumy nie należy używać nazw ''a'' i ''b''. ==== Rekurencja - obliczanie silni ==== Proszę napisać 2 wersje programu obliczającego wartość silni zadanej liczby: * z wykorzystaniem iteracji w pętli, * z użyciem funkcji wywoływanej rekurencyjnie. ==== Rekurencja - adaptacyjny algorytm obliczania całki oznaczonej metodą Simpsona ==== Numeryczne obliczanie (prymitywnymi metodami) całki oznaczonej - (dla osób, które z tym pojęciem się nie spotkały: pola pod wykresem funkcji). === Wersja podstawowa === Algorytm obliczania wartości funkcji całkowanej (dowolnej) zapisujemy w osobnym segmencie (funkcji w znaczeniu fragmentu programu). W segmencie głównym program wczytuje przedział całkowania (dolną //a// i górną //b// granicę pola pod wykresem) oraz na ile podprzedziałów dzielimy cały przedział (długość tego podprzedziału oznaczmy przez //h//). W każdym podprzedziale (od //x<sub>i</sub>// do// x<sub>i+1</sub>//) obliczamy pole "elementarne" wg jednego z wzorów: * prostokątów w przód: //p<sub>i</sub> = h f(x<sub>i</sub>)//, * prostokątów w tył: //p<sub>i</sub> = h f(x<sub>i+1</sub>)//, * prostokątów punktu środkowego: //p<sub>i</sub> = h f(x<sub>i</sub>/2+x<sub>i+1</sub>/2) //, * trapezów: //p<sub>i</sub> = h (f(x<sub>i</sub>)+f(x<sub>i+1</sub>))/2 //, * Simpsona: //p<sub>i</sub> = h (f(x<sub>i</sub>) + 4f(x<sub>i</sub>/2+x<sub>i+1</sub>/2) + f(x<sub>i+1</sub>))/6 //. Należy wybrać jedną z metod. Przybliżenie całki jest sumą wszystkich pól //p<sub>i</sub>//. === Wersja rozszerzona: === Zadajemy wielkość "dopuszczalnego" błędu. Program powtarza obliczenia dla kroku //h///2 i porównuje wyniki dla //h// i //h///2. Jeżeli różnica wyników jest większa niż błąd dopuszczalny, to ponawia połowienie kroku. **UWAGA:** Takich algorytmów obliczania całki oznaczonej nie należy stosować w praktyce obliczeniowej - są metody znacznie lepsze, które tyle samo licząc osiągają zdecydowanie lepszą dokładność (np. Gaussa, Newtona-Cotesa wyższych rzędów, Romberga itp.).

cw-6-rekurencja.1415021355.txt.gz · ostatnio zmienione: 2014/11/03 14:29 przez miller