Ready/Run
Takie sobie archiwum listingów ze starych magazynów komputerowych
- Język programu: Basic
- Platforma: Atari XE/XL
- Kod zamieszczono w Bajtek 06/1989
- Autor listingu: Wojciech Przybył
- Listing nadesłał: Amarok
Stan listingu:
Wyznaczenie niektórych stałych matematycznych z dużą dokładnością jest właściwie sztuką dla sztuki.
Niemniej w wielu dziedzinach nauki i techniki dokładność pomiarów wzrasta ostatnio bardzo szybko i standardowe obliczenia dziesięciocyfrowe są już niewystarczające. Ogólny program obliczeń wielopozycyjnych został przedstawiony w „IKS-ie“ nr 5/86. Program ten umożliwia obliczenia stałych e i π z dowolną dokładnością, ale jest zbyt ogólny, aby mógł być dostatecznie szybki, stąd pomysł, żeby opracować programy szybsze.
Program 1 oblicza liczbę e z dowolną dokładnością, korzystając ze standardowego rozwinięcia funkcji wykładniczej na szereg Maclaurina, natomiast program 2 oblicza liczbę n, korzystając ze wzoru Gaussa i rozwinięcia funkcji arctg(x) na szereg potęgowy:
Przyspieszenie uzyskano poprzez obliczanie wyników pośrednich do niezbędnego minimum liczby miejsc znaczących + 1 cyfra zapasowa. Prócz tego, w programach wyeliminowano w miarę możliwości dzielenia, jako działanie około 3 razy dłuższe od mnożenia, dlatego właśnie, teoretycznie szybszy, o około 3.5%, program wykorzystosujący do obliczania liczby [pi] wzór Mellina (Młody Technik nr 2/89) działa na Atari 130XE wolniej, ponieważ wszystkie ułamki występujące w ostatnim wzorze mają nieskończone rozwinięcia dziesiętne. Czyżby Gauss już wtedy przewidział istnienie komputerów liczących w systemie dziesiętnym?
Program 1 wylicza na Atari pierwsze sto cyfr po przecinku rozwinięcia liczby e w czasie 30 s, natomiast program 2-100 cyfr rozwinięcia liczby — w ciągu 53 s, co oznacza, że program 1 jest ponad sześciokrotnie szybszy, a program 2 — 30 razy szybszy od programu zaprezentowanego w „IKS-ie“ 5/86. Pierwszych 500 cyfr po przecinku liczby e program 1 wylicza w ciągu niecałych 8 min., a 1000 cyfr — w 27,5 min. Dla liczby [pi] czasy obliczeń wg programu 2 wynoszą odpowiednio 19 min. i 1 h 14 min.
Listing pochodzi z repozytorium listingów Basic autorstwa AMAROK
Jak zaladować (najprostsza metoda)
ALTIRRA:
- Zbootować dyskietkę.
- Włączyć SYSTEM->INTERNAL BASIC (Basic Without OPTION Key)
- Cold Reset (Powinien wejść do Basica)
- LOAD "D0:E.BAS" lub LOAD "D0:PI.BAS"
- RUN
atari_pi_e_bajtek_61989-t2e.pl.7z

Ten program ukazał się w reduksie "Bajtek nr 6/89"
- „3 mikrometry” Waldemar Siwiński
- „Komputerze, czy mówisz po polsku?” Marek Czarkowski
- „Ankieta "Bajtka"” Redakcja
- „Monitor na ścianie”
- „Karuzela pełna dyskietek” (JM)
- „Tłumacz” MB
- „Gry i gracze” mp
- „Krzyżówka”
- „Acorn R140 Workstation” (JM)
- „Ghettoblaster” Luke
- „Monty on The Run” Gen
- „Hot Shot” (mz)
- „CASIO SF 4000 i IF 8000” Dominik Falkowski
- „Montaż powierzchniowy” Jarosław Żurawski
