lichtenstein,metody numeryczne L,Reprezentacje liczb, algorytm Hornera,篸anie b艂臋d贸w numerycznych SPRAWOZDANIE


Reprezentacje liczb, algorytm Hornera, badanie b艂臋d贸w numerycznych


Cz臋艣膰 I

1. Wst臋p
Funkcj臋 0x01 graphic
mo偶na przedstawi膰 w postaci niesko艅czonego szeregu:

0x01 graphic

Charakterystyczna cecha tej funkcji jest to, ze pochodna tej funkcji jest jej r贸wna.
Wykresem funkcji 0x01 graphic
jest:
0x01 graphic

2. Fragment kodu:

hold on;

x=1

dokladnosc=0.01;

maxilosc=1000;

wynik1=1;

bladoszacowania1=0;

for p=1:maxilosc

wynik1=wynik1+(x^p)/factorial(p)

bladoszacowania1(p)=exp(x)-wynik1;

if dokladnosc>abs((x^p)/factorial(p)) break

end

end

plot(bladoszacowania1,'b')

Wykres po zaimplementowaniu kodu programu:
0x01 graphic

3. Podsumowanie
Program zosta艂 napisany w 艣rodowisku Matlab. By艂o to pierwsze nasze zetkni臋cie si臋 z tym 艣rodowiskiem programistycznym, wiec je艣li wyst膮pi艂 jaki艣 b艂膮d by艂 on spowodowany jedynie niewiedz膮 student贸w na temat 艣rodowiska programistycznego.
Po zaimplementowaniu kodu programu i z wyrysowanego przez niego wykresu mo偶emy stwierdzi膰, i偶 wszystkie b艂臋dy d膮偶膮 do „0”, wi臋c jest to jak najbardziej wskazane zachowanie. Mo偶emy r贸wnie偶 zaobserwowa膰, i偶 po ka偶dym przej艣ciu przez p臋tl臋 for b艂膮d zmniejsza si臋, gdy偶 dodawane s膮 coraz dok艂adniejsze przybli偶enia.

Cz臋艣膰 II

1. Wst臋p
Dowolny wielomian o postaci:

0x01 graphic

mona zapisa膰 w postaci, kt贸ra pozwala na realizacj臋 tzw. algorytmu Hornera:

0x01 graphic

Kolejno definiujemy:
0x01 graphic







Podstawiamy bn do wielomianu:

0x01 graphic


2. Fragment kodu
float liczenie()
{

cout << "Podaj stopien wielomianu: n = ";

cin >> n;

for (int i = 0; i <= n ; i++)
{

cout << "Podaj wspolczynnik a" << i << ": ";

cin >> tab_a[i];

}

cout << "Podaj x: ";

cin >> x;

float wynik = tab_a[n];

for (int i = n - 1; i >= 0; i--)
{

wynik = wynik * x + tab_a[i];

}

return wynik;

}



3. Podsumowanie

Przy wykorzystaniu algorytm贸w "mno偶膮cych" takich jak algorytm Hornera skracamy diametralnie czas wykonywania, rozwi膮zywania zadania poprzez znaczne ograniczenie czynno艣ci mno偶enia, kt贸ra jest bardzo czasoch艂onna. Przyk艂adowo dla wielomianu stopnia 3 przy tradycyjnym rozwi膮zaniu wykonujemy a藕 6 mno偶e艅, podczas gdy przy u偶yciu algorytmu Hornera tylko 3 to skraca czas oblicze艅, zwa偶ywszy na to, 偶e ilo艣膰 poszczeg贸lnych operacji dodawania jest niezmienna.


Cz臋艣膰 III

1. Wst臋p
Przedstawienie liczby w postaci binarnej, znaczy zapisanie jej w formacie „0” i „1”. W komputerze, ka偶da informacja musi mie膰 posta膰 ci膮gu zer i jedynek, dlatego znak liczby jest reprezentowany przez dodatkow膮 cyfr臋 dw贸jkow膮, zwan膮 bitem znaku, kt贸ra poprzedza w艂a艣ciwe cyfry liczby. Cyfra „l” na pozycji bitu znaku zast臋puje tradycyjny znak minus w zapisie liczb ujemnych, a „0” wyst臋puje zawsze przed liczbami nieujemnymi. Bitu znaku liczby w reprezentacji binarnej nie mo偶na pomin膮膰.
5 = 0.101 -5 = 1.101
Pogrubiona cyfra to bit znaku.

2. Fragment kodu

void binarnie( int liczba)

{

int reszta=liczba%2;

if (liczba>1)

{

binarnie (liczba/2);

}

cout<<(reszta);

}

void main()

{

int liczba;

cout<<"Podaj liczbe: ";

cin>>liczba;

cout<<"W formie binarnej to: ";

if (liczba > 0)

{

cout << "0.";

binarnie(liczba);

}

if (liczba < 0)

{

cout << "1." ;

liczba = liczba *(-1);

binarnie(liczba);

}

3. Podsumowanie
Celem 膰wiczenia by艂o zapoznanie si臋 z zapisywaniem cyfr w formacie binarnym oraz zaimplementowanie tych wiadomo艣ci w kodzie 藕r贸d艂owym programu.
Liczb臋 ujemn膮 mo偶emy zapisa膰 na kilka sposob贸w:

- znak-modu艂
5 = 0101 -5 = 1101
- dope艂nienie do jedynki, czyli odwr贸cenie wszystkich bit贸w liczby dodatniej
5 = 0101 -5 = 1010
- dope艂nienie do dw贸ch, czyli odwr贸cenie wszystkich bit贸w liczby wyj艣ciowej i dodanie „1”
5 = 0101 -5 = 1011

Zakresy liczb jakie mo偶na zapisa膰 w zmiennych okre艣lonego typu:
char (8-bit贸w) -128/+127(ze znakiem) i 0/+255(bez znaku);
short int (16-bit贸w) -32 768/+32 767(ze znakiem) i 0/65 535(bez znaku);
int, long int (32-bity) -2 147 483 648/+2 147 483 647(ze znakiem)

0/ +4 294 967 295(bez znaku);



Wyszukiwarka

Podobne podstrony:
Metody numeryczne, sprawozdanie num new332 pluskwik, Piotr Pr贸chniak gr
lab metody Numeryczne sprawozdanie 8258
7 h, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy numerycz
Spis tresci, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy
4 a, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy numerycz
1 c, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy numerycz
4 m, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy numerycz
Metody Numeryczne Algorytmy II
Okladka, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy nume
1 h, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy numerycz
Przedmowa, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy nu
Contents, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy num
4 i, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy numerycz
6 c, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy numerycz
5 f, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy numerycz
2 c, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy numerycz
2 f, Informatyka, Informatyka, Informatyka. Metody numeryczne, Kosma Z - Metody i algorytmy numerycz

wi臋cej podobnych podstron