1 SZKO LA PODSTAWOWA HELIANTUS 02-892 WARSZAWA ul. BAŻANCIA 16 B l ad bezwzglȩdny zaokr aglenia liczby ɛ = fl() B l ad wzglȩdny zaokr aglenia liczby 0 δ = fl() B l ad procentowy zaokr aglenia liczby 0 δ % = fl() MATEMATYKA REPREZENTACJA LICZB W KOMPUTERZE 100% Prof. dr. Tadeusz STYŠ WARSZAWA 2018 1 1 Czwarty projekt
2
Contents 1 Reprezentacja liczb w komputerze. 5 1.1 Zapis liczb w zmiennym przecinku........................ 5 1.2 B l ad bezwzglȩdny zaokr aglenia........................... 6 1.3 B l ad wzglȩdny zaokr aglenia............................. 6 3
4
Chapter 1 Reprezentacja liczb w komputerze. Liczby w zapisie dziesiȩtnym zokr aglamy na r-tym miejscu po przecinku w ten sposób, że do cyfry na r-tym miejscu dodajemy 1, jeżeli nastȩpna cyfra jest wiȩksza lub równa 5. W przeciwnym razie cyfry po r-ym miejscu kasujemy. Operacje zaokr aglania liczby na r-tym miejscu, oznaczmy symbolem fl r (). Przyk lad 1.1 Zaokr aglamy liczbȩ 22 na 5-tym miejscu po przecinku jak nastȩpuje: 7 22 7 = 3.142857142857...; fl 5(3.142857142857...) = 3.14286, r = 5. 1.1 Zapis liczb w zmiennym przecinku W obliczeniach z użyciem systemów obliczeniowych i komputerów liczby zapisywane s a w postaci zmiennego przecinka = m10 c, m mantysa, c cecha, gdzie mantysa m = 0.α 1 α 2...α r ; α 1 0 ; 0 α i 9 ; i = 1, 2,..., r Najbardziej znacz aca cyfra α 1 0 jest zawsze różna od zera. Dlatego mantysa m spe lnia nastȩpuj a a nierówność 0.1 m < 1. Jasne, że liczba może mieć dok ladn a zmienno przecinkow a reprezentacje w komputerze, jeżeli jej mantysa ma skończon a liczbȩ cyfr. Na przyk lad 1 4 ma dok ladn a reprezentacje gdyż jej mantysa m = 0.25 i cecha c = 0. Natomiast, mantysa liczby 1 3 = 0.333... ma nieskończenie wiele cyfr m = 0.333..., i nie ma dok ladnej reprezentacji komputerowej. Jednakże, każd a liczbȩ, nawet z nieskończon a mantys a, można zapisać w komputerze z dok ladności a b lȩdu zaokr agleń mantysy na r-tym miejscu po przecinku ɛ 0. 000...0 }{{} 5 = 0.5 10 r. r zer 5
6 Na przyk lad = 2 3 = 0.66666666666... zaokr aglone na 4-tym miejscu po przecinku (r = 4) ma b l ad zaokr agleń ɛ = 0.0000333... fl() = 0.6667 Zadanie 1.1 Zaokr aglij nastȩpuj ace liczby na 3-cim miejscu po przecinku i zapisz je w zmiennym przecinku 2 3 4, 29 7, 238 13 Oszacuj b l ad zaokr agleń. 1.2 B l ad bezwzglȩdny zaokr aglenia. Bezwzglȩdny b l ad zaokr aglenia liczby = m10 c Ten b l ad spe lnia nierówność gdzie ɛ = 0.5 10 r. ɛ = fl r () fl r () ɛ 10 c, = 0.57367864 10 2, r = 3. Wtedy b l ad bezwglȩdny liczby na trzecim miejscu po przecinkuzlȩdny zaok aglenia wynosi fl 3 (0.57367864 10 2 ) 0.57367864 10 2 = 0.574 10 2 0.57367864 10 2 = 0.032136 < 1 2 10 3 10 2 = 0.05. 1.3 B l ad wzglȩdny zaokr aglenia. Wzglȩdny b l ad zaokr aglenia danej liczby = m 10 c 0 określamy jak nastȩpuje: δ = ɛ = fl r() gdy 0. Ponieważ mantysa m 0.1, dlatego b l ad wzglȩdny spe lnia nierówność Rzeczywiście, fl r() fl r() = fl r( m10 c ) ± m10 c m10 c 0.5 10 1 r, 0. 0.5 10 r m 10ɛ = 0.5 10 1 r. Tak wiȩc b l ad wzglȩdny nie przewyższa komputerowej precyzji δ = 1 2 101 r. Na przyk lad, jeżeli r = 3 wtedy komputerowa precyzja δ = 1 2 10 2
7 Obliczamy wzglȩdny b l ad zaokr aglenia liczby = 0.57367864 10 2 fl() = 0.032136 0.57367864 10 2 = 0.0005601742. B l ad wzglȩdny bezpośrednio zwi azany jest z b lȩdem procentowym. Mianowicie, b l ad procentowy wyraża siȩ wzorem p% = 100 δ % = 100 fl() % gdy 0. Obliczamy, b l ad procentowy liczby = 0.57367864 10 2 p% = 100 0.5601742 10 3 % = 0.5601742 10 1 % = 0.05601742%. Oczywiście, wyniki obliczeń w komputerze czterech arytmetycznych operacji ± y, y i dzielenia /y na ogó l s a niedok ladne, nawet jeżeli i y s a dane w postaci dok ladnej. Na przyk lad, niech = 0.11111111 i y = 0.55555555 bȩd a 8-cyfrowymi liczbami w 8-mio cyfrowej arytmetyce w komputerze, (8-cyfr mantysa). Zauważamy, że wynik mnożenia y = 0.617283938271605 10 1 ma 15-sto cyfrow a mantysȩ m = 0.617283938271605, która automatycznie jest zaokr aglona w komputerze do 8 cyfrowej mantysy 0.61728394 z b lȩdem bezwzglȩdnym ɛ = 0.000000018271605. Przyk lad 1.2 Oblicz wartość wyrażenia arytmetycznego w 3 i 5-cio cyfrowej arytmetyce liczb w zapisie zmienno - przecinkowym 2 1 3 31 7 + 45.27 Podaj: b l ad bezwzglȩdny, b l ad wzglȩdny i b l ad procentowy obliczeń. 4 2 9 Rozwi azanie. Najpierw, napiszemy liczby = 2 1 3, y = 31 7, z = 45.27, t = 42 9 w postaci zmiennego przecinka, potem zaokr aglimy do miejsca r = 3 i podamy b l ad zaokr aglenia każdej z danych liczb = 2 1 3 = 2.33333...; fl 3() = 0.233 10, ɛ = 0.003333...; y = 3 1 7 = 3.142857142857...; fl 3(y) = 0.314 10, ɛ y = 0.0042857...; z = 45.27 fl 3 (z) = 0.453 10 2, ɛ z = 0.07 t = 4 2 9 = 4.222222...; fl 3(t) = 0.422 10, ɛ t = 0.00222...; Dalej, stosuj ac regu ly kolejności wykonywania operacji arytmetycznych, mnożenie, dzielenie, dodawanie i odejmowanie, obliczmy wartość wyrażenia w arytmetyce 3-cyfrowej: Iloczyn = fl 3 (2 1 3 ) fl 3(3 1 7 ) = fl 3(2.33 3.14) = fl 3 (7.3162) = 7.32 Suma = fl 3 (7.32 + fl 3 (45.274)) = fl 3 (7.32 + 45.3) = fl 3 (52.62) = 52.6 Licznik = 52.6, M ianownik = 4.22, Licznik Mianownik = fl 3 ( 52.6 4.22 ) = fl 3(12.4645) = 12.5,
8 Odpowied z: Wartość wyrażenia artmetycznego obliczonego w 3 cyfrowej arytmetyce wynosi 12.5 Teraz obliczmy wartość tego wyrażenia w 5-cio cyfrowej arytmetyce. Mamy nastȩpuj ace dane: = 2 1 3 = 2.33333...; fl 5() = 0.23333 10, ɛ = 0.00003333...; y = 3fl 5 1 7 = 3.142857142857...; fl 5(y) = 0.31429 10, ɛ y = 0.000042857...; z = 45.27 fl 5 (z) = 0.4527 10 2, ɛ z = 0.0 t = 4 2 9 = 4.222222...; fl 5(t) = 0.42222 10, ɛ t = 0.0000222...; Podobnie, obliczmy wartość wyrażenia arytmetycznego w 5-cio cyfrowej arytmetyce Iloczyn = fl 5 (2 1 3 ) fl 5(3 1 7 ) = fl 5(2.3333 3.1429) = fl 3 (7.333333) = 7.3333 Suma = fl 5 (7.3333 + fl 5 (45.27)) = fl 5 (7.3333 + 45.27) = fl 5 (52.6033) = 52.603 Licznik = 52.603, M ianownik = 4.2222, Licznik Mianownik = fl 5 ( 52.603 4.2222 ) = fl 3(12.4587) = 12.459 Odpowied z: Wartość wyrażenia artmetycznego obliczonego wyżej w 5-cio cyfrowej arytmetyce wynosi 12.459 B lȩdy: Dok ladna wartość wyrażenia: = 12.457 B l ad bezwglȩdny zaokr agleń w 3 cyfrowej arytmetyce 12.5 12.457 = 0.043. B l ad wzglȩdny zaokr agleń w 3 cyfrowej arytmetyce = 0.043 = 0.00345; 0.345% 12.457 B l adu bezwglȩdny zaokr agleń w 5 cyfrowej arytmetyce 12.459 12.457 = 0.002. B l ad wzglȩdny zaokr agleń w 5 cyfrowej arytmetyce = 0.002 = 0.00016; 0.016%. 12.457 Zadanie 1.2 Oblicz wartość nastȩpij acego wyrażenia arytmetycznego w 3 i 5-cio cyfrowej arytmetyce liczb w zapisie zienno - przecinkowym 7 2 3 93 7 + 125.97 + 256.75 Podaj b lȩdy: bezwzglȩdny, wzglȩdny i procentowy obliczeń. 3 7 9