Serwis Edukacyjny w I-LO w Tarnowie ![]() Materiały dla uczniów liceum |
Wyjście Spis treści Wstecz Dalej
Autor: Steven Vickers |
©2021 mgr Jerzy Wałaszek |
Rozkaz: RAND
Funkcje: ABS, SGN, SIN, COS, TAN, ASN,
ACS, ATN, LN, EXP, SQR, INT, PI,
RND, FUNCTION
SPIS TREŚCI |
ROZDZIAŁ 1 Przygotowanie ZX81
ROZDZIAŁ 2 Wydawanie komputerowi poleceń ROZDZIAŁ 3 Lekcja historii ROZDZIAŁ 4 Sinclair ZX81 jako kalkulator kieszonkowy ROZDZIAŁ 5 Funkcje ROZDZIAŁ 6 Zmienne ROZDZIAŁ 7 Łańcuchy tekstowe ROZDZIAŁ 8 Programowanie komputera ROZDZIAŁ 9 Dalsze programowanie komputera ROZDZIAŁ 10 Jeśli ... ROZDZIAŁ 11 Zestaw znaków ROZDZIAŁ 12 Pętle ROZDZIAŁ 13 Wolno i Szybko ROZDZIAŁ 14 Podprogramy ROZDZIAŁ 15 Uruchamianie programów ROZDZIAŁ 16 Pamięć taśmowa ROZDZIAŁ 17 Wyświetlanie z bajerami ROZDZIAŁ 18 Grafika ROZDZIAŁ 19 Czas i ruch ROZDZIAŁ 20 Drukarka dla ZX81 ROZDZIAŁ 21 Podłańcuchy ROZDZIAŁ 22 Tablice ROZDZIAŁ 23 Gdy zaczyna brakować pamięci ROZDZIAŁ 24 Liczenie na palcach ROZDZIAŁ 25 Jak pracuje komputer ROZDZIAŁ 26 Stosowanie kodu maszynowego ROZDZIAŁ 27 Organizacja pamięci ROZDZIAŁ 28 Zmienne systemowe DODATKI A Zestaw znaków B Numery komunikatów C ZX81 dla znających język BASIC |
Matematycznie funkcja jest regułą dającą w wyniku liczbę (wynik) w zamian za inną liczbę (argument lub operand) i tak jest w rzeczywistości operacją jednoargumentową. ZX81 posiada wbudowane niektóre z funkcji matematycznych, a ich nazwy znajdują się pod klawiszami. Na przykład SQR jest znaną funkcją pierwiastka kwadratowego, a:
PRINT SQR 9
daje wynik 3, czyli pierwiastek kwadratowy z 9 (aby wprowadzić funkcję SQR, najpierw naciskasz na klawisz FUNCTION – NEWLINE z SHIFT. Kursor zmienia się na F . Teraz naciśnij klawisz SQR – H; na ekranie pojawi się SQR, a kursor zmieni się z powrotem na L . Ta sama procedura działa dla wszystkich słów o nazwach umieszczonych pod klawiszami, z których prawie wszystkie są nazwami funkcji).
Wpisz:
PRINT SQR 2
Dokładność wyniku możesz przetestować następująco:
PRINT SQR 2*SQR 2
co powinno dać 2. Zwróć uwagę, iż obie funkcje SQR zostały wyliczone przed *, a w rzeczywistości wszystkie funkcje (z wyjątkiem jednej - NOT) są obliczane przed pięcioma operacjami +, -, *, / oraz **. Regułę tę możesz ponownie obejść stosując nawiasy:
PRINT SQR (2*2)
daje 2.
Oto niektóre funkcje (w dodatku C umieszczona jest kompletna lista). Jeśli twoja znajomość matematyki nie pozwala ci ich zrozumieć, nie ma to znaczenia - wciąż będziesz mógł używać tego komputera.
SGN | Funkcja znaku (zwana czasami signum w celu odróżnienia od SIN). Wynikiem jest -1, 0 lub +1 w zależności od tego, czy argument jest ujemny, zerowy lub dodatni. |
ABS | Wartość bezwzględna, inaczej moduł. Wynikiem jest argument przekształcony na liczbę dodatnią, zatem ABS -3.2 = ABS 3.2 = 3.2 |
SIN | sinus* |
COS | cosinus* |
TAN | tangens* |
ASN | arcus sinus* |
ACS | arcus cosinus* |
ATN | arcus tangens* |
LN | logarytm naturalny (o podstawie 2.718281828459045..., zwanej inaczej e) |
EXP | funkcja wykładnicza |
SQR | pierwiastek kwadratowy |
INT | część całkowita. Zawsze jest zaokrąglana w dół, więc INT 3.9 = 3 a INT -3.9 = -4. |
PI | π = 3.1415265358979..., obwód w łokciach okręgu o średnicy jednego łokcia. PI nie posiada argumentu (komputer pamięta tylko 10 cyfr tej liczby, a wyświetla jedynie 8). |
RND | Również RND nie ma argumentu. Zwraca przypadkową liczbę w zakresie od 0 (może tyle wynieść) do 1 (tyle nigdy nie wynosi). |
* Funkcje trygonometryczne, które pracują w radianach, a nie w stopniach.
Używając żargonu z ostatniego rozdziału, wszystkie funkcje z wyjątkiem PI i RND są jednoargumentowymi operacjami o priorytecie 11 (PI i RND są bezargumentowymi operacjami, ponieważ nie posiadają żadnych argumentów).
Funkcje trygonometryczne, EXP, LN i SQR są zwykle wyliczane z dokładnością do 8 cyfr znaczących.
RND i RAND: znajdują się na tym samym klawiszu, jednakże RND jest funkcją, a RAND jest słowem kluczowym, podobnie jak PRINT. RAND wykorzystuje się do sterowania przypadkowością funkcji RND.
Funkcja RND nie jest naprawdę przypadkowa, lecz kolejno przechodzi przez ciąg 65536 liczb tak pomieszanych, iż wyglądają jak przypadkowe (RND jest funkcją pseudoprzypadkową). Możesz wykorzystać RAND do ustawienia RND na określonej pozycji tego ciągu wpisują RAND, a następnie liczbę w zakresie od 1 do 65535 i NEWLINE. Znajomość położenia w ciągu, od którego rozpoczyna RND, nie jest tak ważna jak to, iż ta sama liczba za RAND spowoduje, iż RND będzie startować zawsze z tego samego miejsca. Na przykład wpisz:
RAND 1 (i NEWLINE)
a następnie
PRINT RND
i powtórz te dwa polecenia kilka razy (pamiętaj o użyciu FUNCTION, aby otrzymać RND). Wynik RND zawsze wyniesie 0.0022735596, co nie jest specjalnie przypadkowe.
RAND 0
(0 możesz pominąć) działa nieco inaczej: określa startowe położenie dla RND na podstawie czasu pracy telewizora, a to powinno już być rzeczywiście przypadkowe.
Uwaga: W niektórych dialektach języka BASIC argumenty funkcji należy umieszczać wewnątrz nawiasów. W języku ZX81 BASIC zasada ta nie obowiązuje. |
Polecenie: RAND
Funkcje: SGN. ABS, SIN, COS, TAN, ASN, ACS, ATN, LN, EXP, SQR, INT, PI, RND
FUNCTION
INT (2.9+0.5) = 3 | INT (2.4+0.5) = 2 |
INT (-2.9+0.5) = -3 | INT (-2.4+0.5) = -2 |
Porównaj wyniki z wynikami bez dodania 0.5.
![]() |
Zespół Przedmiotowy |
Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.
Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl
Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.