Masz pytanie ? Zadaj je na naszym Forum Turbo Pascal. Rejestracja w 5 sekund ;-)
Podstawowych pojęć jakimi operuje się programując w Pascalu jest wprawdzie niewiele i nie są one trudne do zrozumienia, ale niewiedząc "z czym je jeść" nie mamy co zabierać się do programowania - wszystkie te pojęcia składają się na szkielet programu.
Zaczynamy:
Program napisany w Pascalu składa się z nagłówka programu (PROGRAM), deklaracji modułów, bloku i znaku . (kropka). W nagłówku programu podaje się zwykle jego nazwę. Za pomocą deklaracji modułów określa się moduły standardowe i moduły użytkownika. Blok składa się z opisu danych i części wykonawczej, a kropka kończy tekst programu. Dopuszcza się możliwość opuszczenia nagłówka (jest on pomijany przez kompilator), deklaracji modułów i opisu danych, a wiersz programu nie może zawierać więcej niż 127 znaków. Oto szkielet programu paskalowego:
PROGRAM Nazwa_Programu; {Nagłóewk programu}
USES {Deklaracja modułów}
{Początek części opisowej}
LABEL {Deklaracje etykiet}
CONST {Deklaracje stałych}
TYPE {Deklaracje typów}
VAR {Deklaracje zmiennych}
PROCEDURE {Deklaracje procedur}
FUNCTION {Deklaracje funckji}
{Koniec części opisowej}
BEGIN
{Ciało programu}
END.
Deklaracja modułów (USES) jest klauzulą pozwalającą nam zdefiniować dowolną ilość modułów w naszym programie, np. :
USES CRT,DOS;
Powyższa deklaracja definiuje dla naszego programu dwa standardowe moduły DOS i CRT.
Etykiety (LABEL) deklarujemy zaraz po deklaracji modułów klauzulą USES, powodują one skok do określonej części programu - wywołujemy je słowem kluczowym GOTO, np. :
LABEL skok_1,skok_2;
...
BEGIN
GOTO skok_1;
...
{Jakieś funkcje czy procedury.}
...
skok_1:
Writeln('Skok do etykiety skok_1');
skok_2:
Writeln('Skok do etykiety skok_2');
END.
Powyższy przykład obrazuje skok do etykiety skok_1. Podczas tej operacji pomijane są wszelkie procedury i funkcje znajdujące się w wykropkowanych miejscach.
Stałe (CONST) deklarujemy po deklaracji etykiet (LABEL), gdy zadeklarujemy jakąś stałą to w dalszej części programu nie możemy przypisać jej już innej wartości niż wartość początkowa. Zmiennym nie musimy przypisywać konkretnego typu danych, lecz w niektórych, bardziej złnożoych programach jest to wskazane, np. :
CONST MaxWysokosc = 100; MaxPredkosc = 10;
lub
CONST MaxWysokosc : Typ = Wartosc; MaxPredkosc : Typ = Wartosc;
W drugim przykładzie Typ oznacza dowolny typ danych, wtedy wartość stałej przypisujemy zgodnie z typem.
Typy (TYPE) deklarujemy po deklaracji stałych (CONST). Każdą zmienną w programie należy zadeklarować tzn. określić jej nazwę oraz wartości, które może ona przyjmować. Zbiór wartości zmiennej nazywa się typem zmiennej. Typy dzielimy na standardowe (predefiniowane, nie wymagające opisu) i niestandardowe (wprowadzane ręcznie przez programistę). O typach będzie jeszcze mowa w następnych lekcjach, więc podam tu tylko przykłady, np. :
TYPE Dzien = (pon, wt, sr, czw, pt, sob, nie); Numer = Integer;
Zmienne (VAR) deklarujemy po deklaracji typów (TYPE). Jak już wspomniałem, wszystkie zmienne używane w programie powinny być zadeklarowane. Deklaracje zmiennych składają się ze słowa kluczowego VAR, po którym następuje wykaz deklaracji. Każdą zadeklarowaną zmienną (wartość zmiennej) możemy w głebi programu dowolnie definiować (przypisywać jej inne wartości), np.
VAR Wynik = Byte;
BEGIN
Wynik:=0; {Wartość początkowa}
...
Wynik:=10; {Wartość przypisana później}
END.
Procedurę (PROCEDURE) lub funkcję (FUNCTION) deklarujemy po deklaracji zmiennych (VAR). Są to wyodrębnione części programu, stanowiące pewną całość, posiadające jednoznaczną nazwę i ustalony sposób wymiany informacji z pozostałymi częściami programu. Procedury i funkcje są stosowane do wykonania czynności, które mogą być wykorzystane w różnych programach lub do wykonania czynności wielokrotnie powtarzanych przez dany program. Różnica pomiędzy procedurą a funkcją polega na sposobie przekazywania wartości. Zadaniem procedury jest wykonanie pewnej sekwencji czynności, polegających zwykle na obliczaniu jedej lub wielu wartości. Natomiast zadaniem funkcji jest obliczenie jedej wartości (typu prostego lub wskaźnikowego). Odmienne są też sposoby wywołania procedur i funkcji. Definicja procedury:
PROCEDURE Nazwa_Procedury(lista_parametrów); ...Część opisowa... BEGIN ...Ciąg instrukcji... END;
W definicji procedury listę parametrów możemy pominąć. Definicja funkcji:
FUNCTION Nazwa_Funkcji(lista_parametrów): Typ_wyniku; ...Część opisowa... BEGIN ...Ciąg instrukcji... END;
W obu przypadkach lista parametrów zawiera deklarację parametrów, przy czym poszczególne deklaracje oddziela się średnikami. W przypadku funkcji w ciągu instrukcji musi wystąpić co najmniej jedna instrukcja przypisania w postaci:
Nazwa_Funkcji := Wyrażenie
powodująca przypisanie wartości pod nazwę funkcji, przy czym co najmniej jedna z tych instrukcji musi być wykonana po wywołaniu funkcji. Typ wyniku funkcji jest określony za pomocą identyfikatora typu.
Spis treści, następny wątek : Typy danych i ich krótki opis