1. Wstęp – historia I teraźniejszość języka basic



Pobieranie 192.46 Kb.
Strona7/7
Data03.05.2016
Rozmiar192.46 Kb.
1   2   3   4   5   6   7

11.Operacje plikowe


Najbardziej niezbędne instrukcje umożliwiające wczytywanie danych z plików dyskowych oraz zapisywanie wyników na dysk oraz pewne inne operacje plikowe.

11.1.Instrukcje OPEN i CLOSE

Przed rozpoczęciem pierwszego odczytywania z pliku lub zapisywania do niego trzeba plik otworzyć instrukcją:


OPEN plik$ [FOR tryb] AS [#]identyfikator%
gdzie:

plik$ - wyrażenie tekstowe określające nazwę pliku

tryb – to jedno ze słów kluczowych:

APPEND, BINARY, INPUT, OUTPUT, lub RANDOM

identyfikator% - to numer z zakresu 1 do 255 którym muszą się posługiwać instrukcje odwołujące się do tego pliku
Aby zakończyć operacje z danym plikiem trzeba go zamknąć instrukcją:

CLOSE #identyfikator%

a jeśli chcemy zamknąć wszystkie otwarte pliki to wystarczy



CLOSE
Przykład:

INPUT "Podaj nazwe pliku: "; n$

OPEN n$ FOR OUTPUT AS #1

PRINT #1, "Ten tekst będzie zapisany do pliku"

CLOSE

11.2.Wczytywanie danych z pliku




OPEN "DANE.TXT" FOR INPUT AS #1 'Otwarcie pliku do odczytu z numerem 1

PRINT "Tekst pliku:"

DO WHILE NOT EOF(1) 'Pętla działa aż do napotkania znacznika końca pliku 1

LINE INPUT #1, LINIA$ 'Wczytuje linię tekstu z pliku

PRINT LINIA$ 'Wyświetla wczytaną linię tekstu na ekranie

LOOP 'Koniec pętli



CLOSE #1 'Zamknięcie pliku

11.3.Zapis do pliku


Oto przykład programu zapisującego wyniki na dyskietkę do pliku WYNIKI.TXT:

CLS


PRINT "Drukowanie do pliku WYNIKI.TXT"

OPEN "A:\WYNIKI.TXT" FOR OUTPUT AS #1

PRINT #1, "Obliczanie kwadratow liczb"

PRINT #1, "liczba", "kwadrat"

FOR y = 0 TO 100 STEP 9.05

PRINT #1, USING "######.####"; y; y ^ 2

NEXT y


CLOSE #1

Sprawdź jego działanie - wkładając dyskietkę na której zapiszą się wyniki. Następnie otwórz plik wyników w NOTATNIKU i przejrzyj.



11.4.Inne przydatne operacje plikowe



CHDIR ścieżka$ - zmiana bieżącego foldera

MKDIR ścieżka$ - utworzenie foldera

RMDIR ścieżka$ - usunięcie foldera

FILES [szablon$] - wyświetlenie zawartości foldera
Przykład:

MKDIR "C:\TEMP\TEST"

CHDIR "C:\TEMP"

FILES


RMDIR "TEST"
KILL plik$ - wymazanie pliku

NAME nazwa$ AS nowa_nazwa$ - zmiana nazwy

12.Grafika w języku QBASIC


Tryby graficzne
Przed jakąkolwiek instrukcja graficzną trzeba komendą SCREEN ustawić tryb graficzny ekranu. Dla współczesnych sterowników ekranowych (kart graficznych) kompatybilnych ze standardem VGA najlepiej użyć trybu nr.9 lub 12
SCREEN 12

ustawia rozdzielczość 640 x 480 pixeli, 16 kolorów (od 0 do 15) oraz 25 linii tekstu po 80 znaków.


Dla tego trybu kolor znaków i linii (ale nie tła) można ustawiać instrukcją:

COLOR nr_koloru_tekstu
SCREEN 9

ustawia rozdzielczość 640 x 350 pixeli, 16 kolorów (od 0 do 15) oraz 25 linii tekstu po 80 znaków,


dodatkowo można zmieniać zarówno kolor tekstu jak i tła: COLOR nr_koloru_tekstu, nr_koloru_tła
Rysowanie linii i prostokątów

Instrukcja: LINE (x1, y1)-(x2, y2), kolor - rysuje odcinek od (x1,x2) do (x1,x2)


Instrukcja: LINE (x1, y1)-(x2, y2), kolor, B - rysuje prostokąt pusty,
a instrukcja: LINE (x1, y1)-(x2, y2), kolor, BF - rysuje prostokąt wypełniony.
Okno graficzne i współrzędne w tym oknie

Linie, okręgi i inne elementy graficzne można rysować na całym ekranie (wtedy punkt 0,0 jest w lewym górnym rogu ekranu) ale jeśli chcemy to robić tylko w pewnym oknie to trzeba je zdefiniować.


Instrukcja: VIEW (x1, y1)-(x2, y2), kolor_tła, kolor_ramki - definiuje okno graficzne.
Bardzo wygodne jest to, że można w tym oknie zupełnie dowolnie ustalić zakres zmian współrzędnych (nie zwracając uwagi na piksele). W tym celu trzeba użyć instrukcji WINDOW podając w niej najpierw jakie pasowałyby nam współrzędne lewego-górnego rogu a potem prawego-dolnego:

WINDOW (xmin, ymax)-(xmax, ymin)
Ustalanie pozycji wydruku na ekranie:

Do tego służy instrukcja: LOCATE wiersz_od góry, kolumna_od_lewej


13.Obsługa interfejsu szeregowego


OPEN "COMn: optlist1 optlist2" [FOR mode] AS [#]filenum% [LEN=reclen%]
n - numer portu który ma być otwarty (1 = COM1, 2 = COM2).

optlist1 - najczęściej używane parametry komunikacji:

[baud] [,[parity] [,[data] [,[stop]]]]

baud – to szybkość transmisji w bodach (bitach na sekundę):

75, 110, 150, 300, 600, 1200, 2400, 4800, 9600

parity - to metoda kontroli błędów z użyciem parzystości kodu:

N (bez kontroli) E (parzysty) O (nieparzysty)

S (space) M (mark) PE (enable error checking)

data - to liczba bitów danych:

5, 6, 7, 8

stop – to liczba bitów stop:

1, 1.5, 2

Wartości domyślne: 300 baud, even parity, 7 data bits, 1 stop bit.
optlist2 - lista rzadziej używanych parametrów, (oddzielanych przecinkami i opisanych w HELPie)
Przykład:

OPEN "COM1:300,N,8,1" FOR RANDOM AS #1


14.Alfabetyczny wykaz ważniejszych słów kluczowych


W języku Basic i innych językach programowania, programy składają się z deklaracji (declarations) i instrukcji (statements, commands) o ściśle określonej budowie (gramatyce). Deklaracje opisują struktury danych a czasem i strukturę programu a instrukcje są poleceniami które komputer ma wykonywać.

Deklaracje i instrukcje zawierają pewne angielskie słowa zwane słowami kluczowymi. Słów tych można używać tylko w odpowiednich miejscach odpowiednich instrukcji a nie wolno używać w inny sposób na przykład jako nazw zmiennych.



A oto tylko niewielka część najczęściej używanych słów:


Słowo

Znaczenie:

Gdzie używane lub do czego:

AND

i

operator logiczny

CALL

wołaj

do wywołania podprogramu zewnętrznego

CASE

przypadek

w instrukcji wyboru Select Case

CIRCLE

okrąg

do rysowania okręgów i elips

COLOR

kolor

określa kolor

CLOSE

zamknij

zamyka otwarty plik danych

CLS

Clear Screen

czyść ekran

DIM

Dimension - wymiar

do deklarowania zmiennych i tablic

DO

wykonuj

rozpoczyna pętlę DO

DOUBLE

podwójne

w deklaracji typu

DRAW

rysuj

instrukcja graficzna

ELSE

w przeciwnym przypadku

element instrukcji IF

END

koniec




EOF

End Of File

znacznik końca pliku

EXIT

wyjście

wyskok z bloku instrukcji

FOR ...

dla

rozpoczyna pętlę FOR

FUNCTION

funkcja

do definiowania funkcji użytkownika

GO SUB

skrót od "Go to subroutine"

idź do procedury

GO TO

idź do

skok bezwarunkowy (nie zalecany)

IF

jeżeli

początek instrukcji IF..THEN..ELSE ..ENDIF

"jeśli .. to ..w przeciwnym przypadku ... koniec"



INPUT

wprowadź

wprowadzanie danych z klawiatury

INTEGER

całkowite

deklaracja typu wartości zmiennych

IS

jest

w instrukcji Select Case

LET

niech

w instr. podstawienia - można pomijać

LINE

linia

do rysowania linii i prostokątów

LOOP

pętla

kończy pętlę DO

LPRINT

(od "line printer print")

drukuj

LPRINT USING ...




drukuj używając (formatu)

NEXT

następna

na końcu pętli FOR

NOT

nie

operator logiczny

OPEN

otwórz

otwiera plik

OR

lub

operator logiczny

OUTPUT

wyjście

przy otwieraniu pliku do wyprowadzania danych

PAINT

maluj

wypełnianie konturu kolorem

PLAY

graj

instrukcja dźwiękowa

POINT

punkt

bada określony punkt ekranu

PRINT

drukuj

wyświetla napisy i wyniki na ekranie

PRINT USING

drukuj - używając formatu

j.w. - używając formatu

PSET

od "point set" - ustaw punkt

rysuje punkt

READ

czytaj

odczytuje dane z instrukcji DATA

REM

od "Remark"

komentarz

RETURN

wróć

kończy podprogram

RND

od "Random"

wartość pseudolosowa

RUN

biegnij

uruchamia program

SCREEN

ekran

ustawia tryb wyświetlania (12 - graficzny)

SELECT CASE

wybierz przypadek

rozgałęzienie wielokrotne

SOUND

dźwięk

instrukcja generowania dźwięku

SQR

od "square root"

pierwiastek kwadratowy

STEP

krok

w instrukcji FOR

STOP

stop

zatrzymuje program

SUB

od "Subroutine"

podprogram typu procedura

THEN

to

element instrukcji IF

TO

do

element instrukcji FOR



15.Wykaz słów kluczowych według typów operacji do jakich są używane


Typ operacji

Słowa kluczowe instrukcji i funkcji

Sterowanie działaniem programu

DO...LOOP, END, EXIT, FOR...NEXT, IF...THEN...ELSE, GOSUB...RETURN, GOTO, ON...GOSUB, ON...GOTO,

SELECT CASE, STOP, SYSTEM



Deklarowanie stałych i zmiennych

CONST, DATA, DIM, ERASE, OPTION BASE, READ, REDIM, REM, RESTORE, SWAP, TYPE...END TYPE

Definiowanie i wywoływanie podprogramów

CALL, DECLARE, EXIT, FUNCTION, RUN, SHELL, SHARED, STATIC, SUB

Obsługa urządzeń wejścia/wyjścia

CLS, CSRLIN, INKEY$, INP, INPUT, KEY (Assignment), LINE INPUT, LOCATE, LPOS, LPRINT, LPRINT USING, OPEN COM,

OUT, POS, PRINT, PRINT USING, SPC, SCREEN Function, TAB, VIEW PRINT, WAIT, WIDTH



Operacje graficzne

CIRCLE, COLOR, GET (Graphics), LINE, PAINT, PALETTE, PCOPY, PMAP, POINT, PRESET, PSET, PUT (Graphics),

SCREEN Statement, VIEW, WINDOW



Komendy dotyczące folderów dyskowych

CHDIR, KILL, MKDIR, NAME, RMDIR

Obsługa plików (odczyt, zapis, ...)

CLOSE, EOF, FILEATTR, FREEFILE, GET (File I/O), INPUT, INPUT$, LINE INPUT, LOC, LOCK, LOF, OPEN, PUT (File I/O), SEEK Function, SEEK Statement, UNLOCK, WRITE

Obsługa pamięci

CLEAR, FRE, PEEK, POKE

Operacje na tekstach

ASC, CHR$, HEX$, INSTR, LCASE$, LEFT$, LEN, LSET, LTRIM$, MID$ Function, MID$ Statement, OCT$, RIGHT$, RSET, RTRIM$

SPACE$, STR$, STRING$, UCASE$, VAL



Obliczenia matematyczne

ABS, ASC, ATN, CDBL, CINT, CLNG, COS, CSNG, CVDMBF, CVSMBF, EXP, INT, LOG, RANDOMIZE, RND, SGN, SIN, SQR, TAN,

TIME$ Function



Obsługa zdarzeń i błędów

COM, ERDEV, ERDEV$, ERL, ERR, ERROR, KEY (Event Trapping), ON COM, ON ERROR, ON KEY, ON PEN, ON PLAY, ON STRIG,

ON TIMER, PEN, PLAY (Event Trapping), RESUME, RETURN, STRIG, TIMER Function, TIMER Statement





1   2   3   4   5   6   7


©absta.pl 2016
wyślij wiadomość

    Strona główna