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

©2024 mgr Jerzy Wałaszek
I LO w Tarnowie

Rozdział 6

Dane

READ, DATA, RESTORE

SPIS TREŚCI

Rozdział 6: Dane

Podsumowanie

READ, DATA, RESTORE


W niektórych z poprzednich programów widzieliśmy, że informację lub dane można było wprowadzać bezpośrednio do komputera przy pomocy polecenia INPUT. Czasami może to być bardzo uciążliwe, szczególnie gdy mnóstwo danych jest powtarzane przy każdym uruchomieniu programu. Możesz zaoszczędzić wiele czasu przez użycie rozkazów READ, DATA i RESTORE. Na przykład:

10 READ a,b,c
20 PRINT a,b,c
30 DATA 10,20,30
40 STOP

Rozkaz READ składa się ze słowa READ (czytaj), za którym umieszczona jest lista nazw zmiennych rozdzielonych przecinkami. Działa to jak polecenie INPUT z tym wyjątkiem, iż zamiast wymagania podania danych przez ciebie, komputer wyszukuje wartości w poleceniu DATA.

Każde polecenie DATA jest listą wyrażeń - liczbowych lub łańcuchowych - rozdzielonych przecinkami.  Możesz umieścić je gdziekolwiek w programie, ponieważ komputer ignoruje je za wyjątkiem wykonywania rozkazu READ. Musisz wyobrazić sobie, że wszystkie wyrażenia ze wszystkich poleceń DATA w programie są składane razem i tworzą jedną długą listę wyrażeń, listę  DATA. Gdy komputer wykonuje pierwsze polecenie READ w celu odczytu wartości, to pobiera pierwsze wyrażenie z listy DATA; dalej drugie, trzecie, itd. w miarę napotykania kolejnych poleceń READ przechodzi przez listę DATA. (Jeśli spróbuje wyjść poza tę listę, to powstanie błąd.)

Zauważ, że zmarnujesz swój czas, umieszczając polecenia DATA w bezpośrednim rozkazie, ponieważ READ nie odnajdzie ich. Polecenia DATA muszą być umieszczone w programie.

Zobaczmy, jak to pasuje do programu, który właśnie wpisałeś. Wiersz 10 mówi komputerowi, że ma odczytać trzy kawałki danych i umieścić je w zmiennych a, b i c. Wiersz 20 każe te zmienne wypisać na ekranie poleceniem PRINT. Polecenie DATA w wierszu 30 daje wartości dla a, b i c. Wiersz 40 zatrzymuje program.  Aby zobaczyć porządek, w jakim to działa, zmień wiersz 20 na:

20 PRINT b,c,a

Informacja w DATA może być częścią pętli FOR...NEXT. Wpisz:

10 FOR n=1 TO 6
20 READ d
30 DATA 2,4,6,8,10,12
40 PRINT d
50 NEXT n
60 STOP

Gdy uruchomisz ten program rozkazem RUN, to będziesz mógł zobaczyć, jak polecenie READ przemieszcza się po liście DATA. Polecenia DATA mogą również zawierać dane łańcuchowe. Na przykład:

10 READ d$
20 PRINT "Data: ";d$
30 DATA "1 czerwca, 2012 roku"
40 STOP

Prosty sposób pobierania wyrażeń z listy DATA jest następujący: rozpocznij od początku i przechodź przez listę, aż osiągniesz jej koniec. Jednakże można zmusić komputer do innego przemieszczania się po liście DATA za pomocą polecenia RESTORE. Składa się ono ze słowa RESTORE (odtwórz), za którym umieszcza się numer wiersza. Powoduje ono, że kolejne polecenia READ będą pobierały swoje dane z pierwszego polecenia DATA, które znajduje się pod podanym numerem lub za nim. (Możesz pominąć numer wiersza, co będzie oznaczało to samo, jakbyś wpisał numer pierwszego wiersza w programie.)

Wypróbuj ten program:

10 READ a,b
20 PRINT a,b
30 RESTORE 10
40 READ x,y,z
50 PRINT x,y,z
60 DATA 1,2,3
70 STOP

W tym programie dane wymagane w wierszu 10 sprawiły, że a=1 i b=2. Instrukcja RESTORE 10 powoduje cofnięcie się do początku listy danych i rozkaz READ z wiersza 40 odczyta do zmiennych x, y i z dane z początku listy DATA, czyli 1,2 i 3. Uruchom ten program jeszcze raz bez wiersza 30 i zobacz, co się stanie.


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
©2024 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.