Serwis Edukacyjny
w I-LO w Tarnowie
obrazek

Materiały dla uczniów liceum

  Wyjście       Spis treści       Wstecz       Dalej  

obrazek

Tłumaczenie: mgr Jerzy Wałaszek

©2023 mgr Jerzy Wałaszek
I LO w Tarnowie

Rozdział 7

Wyrażenia

Wyrażenia matematyczne używające +, -, *, /
notacja naukowa i nazwy zmiennych

SPIS TREŚCI

Rozdział 7: Wyrażenia

Podsumowanie

Operacje: +, -, *, /
Wyrażenia, notacja naukowa, nazwy zmiennych


Już zapoznałeś się z kilkoma sposobami przeprowadzania obliczeń na komputerze ZX Spectrum. Potrafi on wykonywać cztery operacje arytmetyczne +, -, * i / (pamiętaj, że * używa się do mnożenia, a / używa się do dzielenia) oraz że potrafi on znaleźć wartość zmiennej, mając jej nazwę.

Poniższy przykład:

LET podatek=suma*15/100

to pokazuje bardzo ważny fakt, iż obliczenia te można ze sobą łączyć. Takie połączenie, jak suma*15/100, jest nazywane wyrażeniem: zatem wyrażenie jest jedynie skrótem, który każe komputerowi wykonać kilka obliczeń, jedno po drugim. W naszym przykładzie wyrażenie suma*15/100 oznacza: 'poszukaj wartości zmiennej o nazwie "suma", pomnóż ją przez 15 i podziel przez 100'.

Jeśli jeszcze tego nie zrobiłeś, to zalecamy ci przejrzenie broszury wprowadzającej, aby zobaczyć, jak ZX Spectrum posługuje się liczbami oraz jaka jest kolejność obliczania wyrażeń matematycznych.

Dla przypomnienia:

Najpierw wykonywane są mnożenia i dzielenia. Posiadają one wyższy priorytet  niż dodawanie i odejmowanie. W stosunku do siebie mnożenie i dzielenie mają ten sam priorytet, co oznacza, że mnożenia i dzielenia są wykonywane w kierunku z lewa na prawo. Gdy już zostaną wykonane, nadchodzi kolej na dodawania i odejmowania - te również mają taki sam priorytet względem siebie, zatem są wykonywane z lewa na prawo.

Chociaż właściwie musisz jedynie wiedzieć, która z operacji posiada wyższy lub niższy priorytet od drugiej, to komputer wykonuje je, przydzielając im liczbę od 1 do 16, która reprezentuje priorytet każdej operacji: * i / mają priorytet 8, a + i - mają priorytet 6.

Ta kolejność obliczeń jest bezwzględnie stała, lecz możesz ją obejść, stosując nawiasy: cokolwiek w nawiasach zostaje obliczone najpierw, a później jest traktowane jak pojedyncza liczba.

Wyrażenia są użyteczne, ponieważ zawsze, gdy komputer oczekuje od ciebie liczby, możesz zamiast niej podać mu wyrażenie, a on wyliczy odpowiedź. Wyjątki od tej reguły są tak nieliczne, że zajmiemy się nimi osobno w każdym przypadku.

W pojedynczym wyrażeniu możesz dodawać do siebie dowolną liczbę łańcuchów (zmiennych tekstowych), a jeśli chcesz, to nawet wolno ci używać nawiasów.

Powinniśmy bezwzględnie powiedzieć ci, czego możesz, a czego nie możesz używać jako nazw zmiennych. Jak już powiedziano wcześniej, nazwa zmiennej łańcuchowej musi być pojedynczą literą z następującym za nią znakiem $; a nazwa zmiennej sterującej pętli FOR - NEXT również musi być pojedynczą literą; lecz nazwy zwykłych zmiennych liczbowych są bardziej swobodne. Można w nich używać dowolnych liter i cyfr, o ile pierwszy znak nazwy jest literą. W nazwach możesz wstawiać spacje, aby zwiększyć ich czytelność, lecz nie będą one wliczane jako elementy nazwy. Również nie ma znaczenia, czy w nazwach stosujesz duże, czy małe litery.

Oto kilka przykładów dozwolonych nazw zmiennych:

x
t42
ta nazwa jest tak dluga ze nigdy nie bede w stanie wpisac jej ponownie bez popelnienia bledu
teraz mamy siedem  
(te dwie nazwy są traktowane tak samo i odnoszą się do tej samej zmiennej)
tERAZmaMYsIEdeM

Te nazwy nie są dozwolone dla zmiennych:

2001
3 niedzwiedzie   
M*A*S*H
Fotherington-Thomas
(rozpoczyna się od cyfry)
(rozpoczyna się od cyfry)
(* nie jest ani literą, ani cyfrą)
(- nie jest ani literą, ani cyfrą)

Wyrażenia liczbowe mogą być przedstawiane przez liczbę oraz wykładnik: ponownie odsyłamy do broszury wprowadzającej. Aby się przekonać, wypróbuj poniższe rozkazy:

PRINT 2.34e0
PRINT 2.34e1
PRINT 2.34e2

i tak dalej do

PRINT 2.34e15

Zobaczysz, że po chwili komputer również zacznie używać notacji naukowej. Dzieje się tak dlatego, iż do zapisu liczby nie może być użytych więcej niż czternaście znaków. Podobnie wypróbuj:

PRINT 2.34e-1
PRINT 2.34e-2

i tak dalej.

PRINT daje tylko osiem znaczących cyfr liczby. Spróbuj:

PRINT 42949667295, 42949667295-429e7

Dowodzi to, że komputer może przechować cyfry 42949667295, nawet jeśli nie jest gotowy wyświetlić je wszystkie naraz.

ZX Spectrum stosuje arytmetykę zmiennoprzecinkową, co oznacza, że przechowuje osobno cyfry liczby (jej mantysę) oraz pozycję przecinka (wykładnik). Nie zawsze jest to dokładne, nawet dla liczb całkowitych. Wpisz:

PRINT 1e10+1-1e10,1e10-1e10+1

Liczby są przechowywane z dokładnością około dziewięciu i pół cyfry, zatem 1e10 jest za duże, aby było dokładnie przechowane. Niedokładność (w zasadzie około 2) jest większa od 1, zatem liczby 1e10 i 1e10+1 wyglądają dla komputera tak samo.

Dla jeszcze dziwniejszego przykładu wpisz:

PRINT 5e9+1-5e9

Tutaj niedokładność w 5e9 jest tylko około 1, a 1 dodana do liczby w rzeczywistości zostaje zaokrąglona  w górę do 2. Liczby 5e9+1 i 5e9+2 wyglądają dla komputera na równe.

Największa liczba całkowita, którą można w całości przechować dokładnie jest o 1 mniejsza od 232 (lub 4294967295).

Łańcuch "" nie zawierający żadnych znaków jest nazywany pustym  lub zerowym  łańcuchem. Pamiętaj, że spacje są znaczące i i pusty łańcuch to ni to samo co łańcuch jedynie ze spacjami.

Spróbuj:

PRINT "Czy juz przeczytales "W pustyni i w puszczy"?"

Gdy naciśniesz ENTER, otrzymasz mrugający znak zapytania, który pokazuje, że gdzieś wewnątrz wiersza jest błąd. Gdy komputer napotka znak cudzysłowu na początku "W pustyni i w puszczy", to dojdzie on do wniosku, że jest to znacznik końca łańcucha "Czy juz przeczytales ", a dalej nie będzie on w stanie odgadnąć, co oznacza napis 'W pustyni i w puszczy'.

Istnieje specjalna metoda rozwiązania tego problemu: gdy chcesz umieścić znak cudzysłowu wewnątrz łańcucha, musisz wpisać go dwukrotnie, jak poniżej:

PRINT "Czy juz przeczytales ""W pustyni i w puszczy""?"

Jak widzisz z tego, co zostało wydrukowane na ekranie, każdy podwójny znak cudzysłowu na wydruku pojawia się tylko jeden raz; jedynie musisz wpisać go dwa razy, aby został rozpoznany jako znak cudzysłowu, a nie jako koniec łańcucha tekstowego.

Na początek:  podrozdziału   strony 

Zespół Przedmiotowy
Chemii-Fizyki-Informatyki

w I Liceum Ogólnokształcącym
im. Kazimierza Brodzińskiego
w Tarnowie
ul. Piłsudskiego 4
©2023 mgr Jerzy Wałaszek

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.