Cyfry istotne są to wszystkie
cyfry z wyjątkiem zer na początku liczby pomagające określić pozycję
kropki.
Przykład 1
0,0000123 posiada 3 cyfry istotne
Cyfry ułamkowe
Cyfry ułamkowe są to wszystkie
cyfry po kropce.
Przykład 2
0,0000123 posiada 7 cyfr ułamkowych
32 posiada 0 cyfr ułamkowych
0,12300 posiada 5 cyfr ułamkowych
Cyfra znacząca i poprawna
Cyfry istotne występujące w , aż do t-tej
pozycji po kropce nazywamy cyframi
znaczącymi.
np. Zadanie określić liczbę cyfr poprawnych i znaczących, gdy
0.0123 +- 0.001
Rozwiązanie:
więc t = 2 , a więc 2 cyfyr poprawne
ułamkowe a więc poprawnymi liczbami są liczby: 0,01 a więc jest tylko
jedna cyfra znacząca.
0032 posiada 2 cyfry znaczące
0,12300 posiada 5 cyfr znaczących
Zadanie 1
Ile liczb istotnych, znaczących i poprawnych jest w liczbach:
a) 0.1234 +-
0,0001.
b) 0.0002367
+- 0.00007
Zaokrąglanie liczb ułamkowych
Reguła zaokrąglania mówi, że jeżeli cyfra na t+1-szej pozycji jest
mniejsza niż 5 to wynik bez zmian, gdy jest większa od 5 to t-tą cyfrę
zwiększamy o 1. Natomiast w przypadku gdy t+1-sza cyfra równa się 5 to
gdy t-ta cyfra jest parzysta to bez zmian a jeżeli nieparzysta to
zwiększamy o 1.
Zaokrąglanie jest powszechnie używane w przypadku wykonywania operacji
na liczbach zmiennopozycyjnych na komputerze. Bowiem jeżeli zamierzamy
dodać liczbę 0.75 do liczby 5 zauważamy, że wynik nie jest
reprezentowany w naszym formacie. A więc po wykonaniu dodawania należy
wykonać zaokrąglenie.
Przykład 3
0.34567 zaokrąglamy do 0.3458
0.34565 zaokrąglamy do 0.3456
Zadanie 6
Obliczyć zaokrąglenie liczby oraz oblicz jaki jest błąd względny i
bezwzględny tego zaokrąglenia:
a) 0.012345678 do 4 cyfr istotnych
b) 0.012345678 do 5 cyfr istotnych
Obcinanie liczb ułamkowych
Reguła obcinania mówi o odrzucaniu wszystkich cyfr leżących na prawo od
t-tej liczby po przecinku.
Obcinanie daje większe błędy niż zaokrąglanie, jednak jest równie
ważne, gdyż często z przyczyn technicznych jest ono o wiele łątwiejsze.
Zadanie 7
Obliczyć obcięcie liczby oraz oblicz jaki jest błąd względny i
bezwzględny tego zaokrąglenia:
a) 0.012345678 do 4 cyfry
b) 0.012345678 do 5 cyfry
Rachunek zmiennopozycyjny
Sposób zapisu liczb w komputerze wymusza specjalny sposób wykonywania
operacji matematycznych na tych liczach. Każda opracja (np. dodawnie,
odejmowanie, mnożenie, dzielenie, pierwiastkowanie) jest wykonywana w
szczególny sposób.
Dodawanie i odejmowanie
Niech: a := maBca
, b := mbBcb Załóżmy także, że |a| > |b|. Wtedy, jeśli dodamy te
dwie liczby mamy: a + b = Bca
( ma + mb B-(ca
– cb))
Zadanie 8
Wylicz sumę liczb:
a) 12,75 + 3
b) 1027 + 1
W rachunku zmiennopozycyjnym używając liczb zmiennoprzecinkowych dla
długości s=1, c=6, m=5.
Wyznacz błąd względny i bezwzględny wyniku.
Jak widać przy niektórych obliczeniach w powodu niedokładoności
reprezentaji można nie zauważyć wyniku dodawania, a liczba większa może
być wchłonięta przez mniejszą. Aby to zaobserwować w praktycem, wykonaj
poniższy program:
program niesk;
{$APPTYPE CONSOLE}
var x,y: single;
begin x:=10000; writeln(x); y := x + 0.00001; writeln(y); if (x = y) then writeln('Liczby x i y są równe równe'); readln; end.
Mnożenie
Niech a i b będą takie jak w przypadku definiowania dodawania.
Wtedy:
a*b = ma*mb*B(ca + cb)
Zadanie 9
Wylicz iloczyn liczb:
a) 12,75 * 2
b) 1027 * 0,1
W rachunku zmiennopozycyjnym używając liczb zmiennoprzecinkowych dla
długości s=1, c=6, m=5.
Wyznacz błąd względny i bezwzględny wyniku.
Dzielenie
Niech a i b będą takie jak w przypadku definiowania dodawania.
Wtedy:
a/b = ma/mb * B(ca - cb)
Zadanie 10
Wylicz iloraz liczb:
a) 12,75 / 2
b) 1027 / 3
W rachunku zmiennopozycyjnym używając liczb zmiennoprzecinkowych dla
długości s=1, c=6, m=5.
Wyznacz błąd względny i bezwzględny wyniku.
Arytmetyka fl
Ponieważ wszystkie liczby w komputerze są zaokrąglane lub obcinane,
działania na takich liczbach są również obarczone pewnym błędem. Błąd
ten możemy odpowiednio szacować biorąc pod uwagę błędy wszystkich
interpretacji liczb oraz błędy wynikające z działań.
Działania wykonywane na liczbach zapisanych maszynowo w arytmetyce
zmiennoprzecinkowej nazywamy arytmetyką fl. Każde działanie w tej
arytmetyce jest obarczone pewnym błędem. Mamy: fl(x op y) = (1 + e)
gdzie: op - oznacza dowolne
działanie arytmetyczne (dodwania, odejmowanie, mnożenie, dzielenie)
e - oznacza błąd wywołany przez dokonanie działania arymetycznego.
Błąd każdego działania możemy zawsze oszacować z góry przez wartość,
która nazywana jest dokładnością maszynową:
gdzie:
B - oznacza podstawę rozwinięcia systemu w jakim zapisujemy liczby (w
komputerach jest to 2)
t - liczba cyfr znaczących, które jesteśmy w stanie zapamiętać
Mając taką wiedzę można szacować błędy, które mogą powstać na skutek
operacji arytmetycznych wykonywanych w komputerze.
Przykład 4
Oszacujmy błąd powstający podczas wyznaczania wartości: (a-b)(a+b), dla
liczb a i b zapisanych w komputerze.
Rozwiązanie: