background image

1

 Techniki Obliczeniowe i Symulacyjne
 Reprezentacje liczb, błędy obliczeń, uwarunkowanie zadań
 dr inż. Dariusz Borkowski

2011.02.28

Ćwiczenie 1 (1 pkt)

Obliczenie liczby bitów mantysy. Napisz w Matlabie program, który wyznaczy liczbę bitów mantysy 

m liczby zmiennoprzecinkowej x typu double oraz dokładność obliczeń w Matlabie (zmienna systemowa 
eps). W tym celu należy skonstruować ciąg:

1

1

,

1,

1,2,3,...

2

n

n

n

ε

ε

ε

+

=

=

=

oraz przerwać obliczenia kiedy nie jest spełniony warunek:

1

1

ε

+ >

definiującego eps. Liczba wykonanych dzieleń to odpowiada długości mantysy.

Ćwiczenie 2 (1 pkt)

Obliczenie liczby bitów wykładnka. Napisz w Matlabie program, który wyznaczy liczbę bitów  e

max 

wykładnika e liczby zmiennoprzecinkowej x typu double. W tym celu należy skonstruować ciąg:

1

1

2 ,

,

1,2,3,...,

n

n

x

x

x

n

nmax

+

=

=

=

realmin

aż do momentu niespełnienia warunku:

n

x

<

realmax

gdzie realmin i realmax to zmienne systemowe Matlaba. Powinien być spełniony warunek: 

max

2

nmax

e

=

Ćwiczenie 3 (1 pkt)

Zapis bitowy liczb zmiennoprzecinkowych. Wykorzystując funkcje dec2bin() oraz strcat() napisz 
w Matlabie program, który pokaże zapis binarny następujących liczb:
liczba

jej binarna reprezentacja
seeeeeeeeeeemmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm

0

0000000000000000000000000000000000000000000000000000000000000000

eps

1

0011111111110000000000000000000000000000000000000000000000000000

1+eps

1+eps/2

100+100eps/2

realmax

realmean

0.5e-308

1e-308

2e-308

4e-308

8e-308

2e-324

0000000000000000000000000000000000000000000000000000000000000000

background image

Ćwiczenie 4 (2 pkt)

Uwarunkowanie zadania obliczeniowego – pierwiastki równania kwadratowego.

Napisz w Matlabie program obliczający pierwiastki wielomianu drugiego rzędu:

y=ax

2

bxc ,

1 x

1,2

1

=

b±

b

2

4ac

2a

,

2 x

1,2

2 

=

2c

b±

b

2

4ac

na podstawie wzorów 1) i 2). Przyjmij a=1, b=2, c=1. Oblicz i wyświetl pierwiastki x

1

 i x

2

 na tle funkcji 

y=f(x) dla obu wzorów. Następnie przyjmij że wartość b jest zaburzona o 1%, czyli b’=b(1+

ε

)

ε

=0.01, 

oraz oblicz i wyświetl pierwiastki x

1

’ i x

2

’, ponownie dla obu wzorów. Oblicz uwarunkowanie zadania 

obliczeniowego w każdym przypadku:

'

1,2

1,2

1,2

1,2

'

x

x

x

x

cond

b b

b

=

Co się stanie jeśli 

0.01

ε = −

? Sprawdź czy zadanie wyznaczania pierwiastków równania z wzoru (1) jest 

dobrze uwarunkowane dla wartości a=1, b=2, c=0,01.


Document Outline