Turbo Pascal.pdf
(
102 KB
)
Pobierz
Turbo Pascal
2.
Turbo Pascal
Budowa programu
– ogólny szablon programu wygląda nastepująco
Listing 2.1
program
nazwa_programu; {komentarz}
uses
biblioteka; {ładowanie bibliotek w programie}
var
{deklaracja zmiennych}
nazwa_zmiennej : typ_zmiennej;
const
{deklaracja stałych}
nazwa_stałej = wartość;
type
{deklaracja typu}
nazwa_zmiennej = (wartość_1, wartość_2, wartość_3);
nazwa_zmiennej= wartość_minimalna…wartość_maksymalna;
begin
{rozpoczęcie bloku instrukcji}
{instrukcje}
end;
Typy danych –
w Turbo Pascalu występują poszczególne typy danych w zależności od wartości jaką
ma przyjąć zmienna. W zależności od wielkości zajmowanej pamięci zmienia się zakres
przyjmowanych wartości. Podstawowymi typami danych w TP są:
a)
Integer – jest to typ całkowity, który przechowywany jest w 2B pamięci
b)
shortInt – jest to typ całkowity krótki, który jest przechowywany w 1B pamięci
c)
LongInt – jest to typ całkowity długi, który przechowuje dane w 4B
d)
byte – jest taki sam jak typ shortInt, z tą różnicą, że przechowuje tylko dane dodatnie
e)
word – jest to typ całkowity, który tak jak typ integer przechowywany jest w 2B pamięci ale
podobnie jak typ byte przyjmuje tylko wartości dodatnie
f)
real – jest to typ rzeczywisty, który przyjmuje liczby rzeczywiste z dokładnością do 11 cyfr po
przecinku i zajmuje 6B pamieci
g)
char – jest to typ znakowy i jako wartość przyjmuje tylko jeden znak, do jego zapisania
potrzeba 1B pamieci
h)
string – jest to typ łańcuchowy, który przechowuje całe napisy, jego rozmiar definiuje się po
przez podanie przy nazwie zmiennej długości łańcucha w kwadratowych nawiasach np.
łańcuch[20] do którego możemy zapisać 20 znaków. Jego przestrzeń dyskowa jest zależna od
długości łancucha.
i)
boolean – jest to typ logiczny, który przyjmuje tylko wartości true/false.
Operatory –
w języku TB występują różne rodzaje operatorów:
a)
Operatory przypisania: „:=”
b)
Operatory arytmetyczne: +,-,/,*,div,mod
c)
Operatory logiczne: and,or,not
d)
Operatory binarne
e)
Operatory porównania: <,>,<>,=,<=,>=
Paweł Maj
Strona 1
Instrukcje wyboru –
w języku TB występują dwie instrukcje wyboru:
a)
IF
warunek
THEN
instrukcje_jeżeli_prawda
ELSE
instrukcje_jeżeli_falsz
b)
CASE
wartość
OF
wartość_1: instrukcje_1;
(…)(…)
wartość_n: instrukcje_n;
else
instrukcja_awaryjna;
END;
Pętle –
w języku TP występują trzy pętle:
Instrukcja while –
jest to instrukcja, gdzie warunek jest sprawdzany na początku i instrukcje są tak
długo powtarzane, jak długo warunek jest prawdziwy.
WHILE
warunek
DO
Instrukcje;
Instrukcja repeat
– jest to instrukcja, gdzie warunek jest sprawdzany na końcu pętli i instrukcje są
powtarzane tak długo, jak długo warunek nie zostanie spełniony. Charakterystyczne dla tej pętli jest
to, że instrukcje muszą zostać wykonane przynajmniej raz.
REPEAT
Intrukcje;
UNTIL
warunek;
Instrukcja for –
o ile dwie poprzednie instrukcje są używane wtedy gdy nie znamy dokładnej liczby
powtórzeń pętli, to funkcja for jest głównie wykorzystywana przy znanej liczbie pętli
(UWAGA! To nie
jest do końca prawda, bo sprawny programista może zrobić tą pętle tak, że będzie ona
wykonywała się różną ilość razy w zależności od danych).
Ta pętla może mieć dwa wyrażenia albo
FOR … TO … DO
, oznacza to że wartość zmiennej sterującej, będzie w każdym wykonaniu pętli
zwiększać
się o jeden. Natomiast
FOR … DOWNTO … DO
będzie w każdym wykonaniu pętli
zmniejszać
wartość zmiennej sterującej o jeden.
FOR
zmienna_sterująca:= wartość
TO/DOWNTO
wartość_końcowa
DO
BEGIN
Intrukcje;
END;
Paweł Maj
Strona 2
Tablice –
są to struktury danych, które przechowują wiele wartości tego samego typu np.: kilka
wartości typu Integer lub kilka wartości typu Real. Mieliśmy już wcześniej do czynienia z tablicą
danych, a mianowicie był to typ danych
string
, który jest tak naprawdę tablicą przechowująca kilka
wartości typu
char
.
UWAGA! NADWYMIAR WAŻNE!
Tablice indeksuje się od 0, czyli pierwsza
komórka tablicy na indeks 0, następna dopiero 1. Więc tablica która posiada
n
elementów, posiada
ostatnią komórkę o indeksie równym
n-1.
Tablice mogą posiadać wiele wymiarów:
Tablica jedno wymiarowa –
jest to tablica ciągła która ma wartości poukładane jakby jeden po
drugim. Taką tablice przedstawia poniży rysunek.
0
1
2
3
4
5
6
7
8
9
Tablica dwu wymiarowa
– jest tablica która posiada kolumny i wiersze. Jest to najczęściej
wykorzystywany typ tablicy, co nie oznacza, że jedyny. Jej wygląd graficzny może przedstawiać
poniższy rysunek.
0,0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
1,0
1,1
1,2
1,3
1,4
1,5
1,6
1,7
1,8
1,9
2,0
2,1
2,2
2,3
2,4
2,5
2,6
2,7
2,8
2,9
3,0
3,1
3,2
3,3
3,4
3,5
3,6
3,7
3,8
3,9
4,0
4,1
4,2
4,3
4,4
4,5
4,6
4,7
4,8
4,9
Tablica trzy lub wiecej wymiarowa
–o ile tablice jedno lub dwu wymiarową łatwo sobie narysować,
to już trzema wymiarami jest trudniej. Co prawda możemy na upartego dodać trzeci wymiar ale jest
to męczące, wiec przydałby się sposób na łatwe zdefiniowanie sobie tablic które mają więcej niż dwa
wymiary. Dobrym sposobem na wyobrażenie sobie tablicy posiadającej kilka wymiarów jest na
początek wyobrażenie tablicy jedno wymiarowej. Teraz do każdej komórki tej tablicy wstawiamy
sobie następną tablice która ma Iles tam elementów. Tak powstała nam już tablica dwu wymiarowa.
Jeżeli nie możesz sobie tego wyobrazić to popatrz na rysunek tablicy dwu wymiarowej i wyobraź
sobie, że pogrubione linie to komórki tablicy jednowymiarowej, w której wpakowane zostały kolejne
tablice.
0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9
1,0 1,1 1,2 1,3 1,4 1,5 1,6 1,7 1,8 1,9
2,0 2,1 2,2 2,3 2,4 2,5 2,6 2,7 2,8 2,9
3,0 3,1 3,2 3,3 3,4 3,5 3,6 3,7 3,8 3,9
4,0 4,1 4,2 4,3 4,4 4,5 4,6 4,7 4,8 4,9
Tak samo można zrobić z tablicą o większej liczbie wymiarów, po prostu do każdej istniejącej już
komórki wkładamy kolejną tablice, tak powstanie nam struktura danych o dużej ilości wymiarów.
Takie tablice są rzadko wykorzystywane, a praktycznie prawie wcale, ale warto wiedzieć, że można
takie zrobić.
Paweł Maj
Strona 3
Sposób deklaracji tablicy danych
Tablica jednowymiarowa:
var
nazwa_tablicy:
array[
wartość_min..wartość_max
] of
typ_danych;
np.: var tablica: array[1..20] of integer;
Tablica ta przechowuje dane typu integer w 20 komórkach danych
Tablica dwu lub wielowymiarowa:
var
nazwa_tablica:
array
[
zakres_wymiaru_pierwszego
][
zakres_wymiaru_drugiego
][
zakres_n_wymiaru
] of
typ_danych;
np.: var tablica: array[1..20][1..5] of integer;
Tablica ta przechowuje dane w strukturze gdzie jest 20 kolumn i 5 wierszy, czyli mamy tablice
dwu wymiarową.
Odwołanie się do elementu tablicy:
Żeby odwołać się do konkretnego elementu tablicy musimy podaj jej nazwę i w nawiasach
kwadratowych numer indeksu np.:
Tablica[1];
{odwołuje się do elementu tablicy o indeksie równym 1}
Tablica[0][4];
{odwołanie się do tablicy dwuwymiarowej, kolumna 0, wiersz 5}
Procedury –
jest to podprogram, którego deklaracje robimy jeszcze przed słowem
begin,
które
rozpoczyna blok instrukcji głównych programu. Procedura charakteryzuje się tym, że nie musi ona
zwracać wartości, co nie znaczy, że nie może. Ogólna postać procedury jest następująca:
procedure
nazwa_procedury
(
parametr1: typ1; parametr2: typ2; var nazwa: typ)
var
zmienna_lokalne; {są to tylko zmienne wykorzystywane w wewnątrz procedury}
begin
Instrukcje;
end;
w parametrach funkcji jest przekazywana zmienna poprzedzona słowem kluczowym var, pozwala to
na zmianę wartości zmiennej poza granicami funkcji. Natomiast parametr1 i parametr2 nie zostaną
zmienione poza granicami funkcji. (
UWAGA! DLA CIEKAWSKICH!
Dlaczego tak jest? Wiąże się to z
wskaźnikami i przekazywaniem adresu do zmiennej, a nie samej jej wartości, dokładnie nie będę się
tutaj o tym rozpisywał bo o tym można napisać osobny dział).
Paweł Maj
Strona 4
Funkcja –
spełnia podobną funkcje jak procedura, z tą różnica, że ona zawsze zwraca wartość i trzeba
określić jakiego będzie ona typu. Ogólna postać funkcji wygląda następująco:
procedure
nazwa_procedury
(
parametr1: typ1; parametr2: typ2): typ wyniku
var
zmienna_lokalne; {są to tylko zmienne wykorzystywane w wewnątrz procedury}
begin
Instrukcje;
nazwa_procedury := wynik; {jest to linijka obowiązkowa, gdzie wynik jest wynikiem który
chcemy otrzymać}
end;
Dynamiczne struktury danych
to proste i złożone struktury danych, którym pamięć jest przydzielana i
zwalniana w trakcie wykonywania programu.
STOS
-wstawianie, usuwanie i dostęp do składników są możliwe tylko w jednym końcu zwanym
wierzchołkiem stosu
KOLEJKA
-dołączanie składników jest możliwe tylko w jednym końcu, a usuwanie tylko w drugim
końcu
LISTA-
dla każdego składnika (poza pierwszym i ostatnim) jest określony jeden składnik poprzedni i
jeden składnik następny lub tylko składnik poprzedni lub następny, w dowolnym miejscu można
dołączać lub usuwać składnik
DRZEWO
-dla każdego składnika (poza pierwszym) jest określony jeden składnik poprzedni i dla
każdego składnika (poza ostatnim) jest określonych n (n
³
2) składników następnych
GRAF
-struktury definiowane przez dwa zbiory: zbiór wierzchołków i zbiór krawędzi określający
powiązania pomiędzy poszczególnymi wierzchołkami.
Paweł Maj
Strona 5
Plik z chomika:
Deshot
Inne pliki z tego folderu:
Turbo Pascal.pdf
(102 KB)
Algorytmika.pdf
(146 KB)
Inne foldery tego chomika:
BIOS
Systemy i Sieci
Urządzenia Techniki Komputerowej (UTK)
Webmastering
Zgłoś jeśli
naruszono regulamin