TURBO PASCAL
Pascal jest jednym z najpopularniejszych języków programowania komputerów. Powstał on w 1971 roku, kiedy to Niklaus Wirth opublikował pierwszy artykuł o nim. Upowszechnienie Pascala nastąpiło po roku 1974, w którym Wirth, opierając sie na poprawionym artykule, wydał wraz z Kathleem Jensen pierwszy podręcznik tego języka. W zamierzeniu Wirtha język Pascal miał służyć przede wszystkim do nauki programowania strukturalnego, czyli określania dużych elementów poprzez elementy niższego rzędu, aż do końcowych elementów programowych realizujących określone funkcje.
Wraz z rozwojem techniki mikrokomputerów pojawiły sie liczne wersje języka Pascal. Światowy prymat należy jednak do tzw. Turbo Pascala, wprowadzonego na rynek w 1983 roku przez amerykańską firmę Borland International Inc.
Stałe wzbogacanie i doskonalenie języka Turbo Pascal przez
Borland doprowadziło do powstania pod koniec 1992 roku wersji 7.0 która pojawiła sie na rynku w postaci dwóch pakietów: Borland Pascal 7.0 i Turbo Pascal 7.0 .
Zintegrowane systemy programowania i sam język Turbo Pascal cechują:
okienkowość systemów* programowania
wielozbiorowy edytor, generujący zbiory tekstowe w kodzie* ASCII
możliwość sterowania za pomącą myszki*
środki śledzenia* wykonywania programów oraz lokalizacji i usuwania ich błędów
programowanie* strukturalne
możliwość pisania fragmentów programów w asemblerze i* traktowania funkcji
jak procedur
programowanie grafiki*
możliwość* usuwania zbędnych fragmentów tekstów
przeglądanie modułów, obiektów i* identyfikatorów
wyróżnianie identyfikatorów, słów kluczowych, łańcuchów,* komentarzy
Program napisany w Turbo Pascalu składa się z nagłówka, bloku i znaku.(kropka). Nagłówek składa się ze słowa program, po którym podaje się nazwę programu. Blok składa się z opisu danych i części wykonawczej ograniczony słowami begin i end, a kropka kończy tekst programu.
Alfabet języka Turbo Pascal zawiera małe i duże litery alfabetu łacińskiego, kreskę podkreślenia, cyfry arabskie, 23 znaki specjalne
oraz 32 znaki sterujące. Elementy alfabetu łacińskiego nazywa sie
symbolami podstawowymi. Pełen zestaw symboli podstawowych jest
następujący:
litery: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z _
cyfry: 1 2 3 4 5 6 7 8 9 0
znaki specjalne: odstęp + - * / = ^ < > ( )[ ] { } . , : ; ' # @
znaki sterujące: znaki o kodach ASCII od 0 do 31
Małe i duże litery nie są rozróżniane. Powoduje to, że zapisy na
przykład TURBOPASCAL , TurBoPaScaL , turbopascal itp
są uznawane za identyczne.
W TPascalu wyróżniamy także słowa kluczowe. Słowem kluczowym
nazywamy każdy 49 z następujących słów języka angielskiego:
and, array, asm, begin, case, const, constructor, destructor, div, do, downto, else, end, file, for, function, goto, if, implemenation, in, inline, inherited, interface, label, mod, nil, not, object, of, or, packed, procedure, program, record, repeat, set, shl, shr, string, then, to, type, unit, until, uses, var, while, with, xor.
Typy, stałe i zmienne
Stałe i zmienne służą w programie do reprezentowania danych.
Stała (literał) jest nazwą pewnej wartości, która w całym programie
nie ulega zmianie. Na przykład zapis
const e = 75;
oznacza, że zdefiniowano stałą e, która ma w programie wartość 75.
Zmienne w przeciwieństwie do stałych mogą reprezentować różne wartości. Zbiór wartości, jakie może przyjąć zmienna nazywa się jej
typem.
W języku Turbo Pascal istnieje wiele typów predefiniowanych,
tj. typów zdefiniowanych w tym języku, których użycie wymaga podania odpowiedniego identyfikatora np. :
liczby całkowite (typy ShortInt, Integer,* LongInt, Byte, Word)
liczby rzeczywiste (typy Real, Single, Double,* Extended, Comp)
wartości logiczne (typy Boolean, ByteBool, WordBool,* LongBool)
zbiór znakowy (typ char)*
zbiór wskaźnikowy (typ Pointer)*
W programie taki typ zapisuje się w następujący sposób:
var x : integer
zapis deklaruje zmienną x jako zmienną typu Integer.
Instrukcje
W części wykonawczej bloku, którą ograniczają słowa begin i end,
znajdują się instrukcje opisujące czynności wykonywane w programie. Poszczególne instrukcje programu oddziela się średnikami. Jedną z podstawowych instrukcji języka Turbo Pascal jest
instrukcja przypisania, która nadaje zmiennej określoną wartość.
Na przykład zapis
x:=10;
powoduje, że zmiennej x zostaje nadana wartość 10.
Znaki := są symbolem przypisania.
W instrukcjach przypisania mogą występować wyrażenia. Wyrażenie jest to sensowna kombinacja operatorów i argumentów. Przykładami
operatorów są:
1. + ( operator dodawania ) np x:=a+643;
2. - ( operator odejmowania ) np x:=f-1;
3. * ( operator mnożenia ) np x:=a*9;
4. / ( operator dzielenia ) np x:=q/2;
5. = ( operator porównań ) np x:=p=9654;
W programie mogą wystąpić instrukcje, które uzależniają wykonanie pewnych czynności od spełnienia określonego warunku. Tego typu
instrukcje nazywamy instrukcjami warunkowymi.
Przykładem może być instrukcja :
if r<2 then
z:=r+a - 10;
która uzależnia nadanie zmiennej z wartości wyrażenia występującego z prawej strony symbolu przypisania od spełnienia
przez zmienną x warunku, że jej aktualna wartość jest mniejsza od 2.
Jeśli w zależności od spełnienia pewnego warunku należy wykonać
kilka instrukcji, to instrukcje te można połączyć w jedną instrukcję
za pomocą tzw instrukcji złożonej. Instrukcja złożona rozpoczyna sie
od słowa begin i kończy się słowem end. Np:
if x<2 then
begin
z:=x+a-12;
y:=3*q;
x:=4*x+5
end;
Po słowie Then użyto instrukcję złożoną, w której występują trzy inne
instrukcje. Po ostatniej instrukcji można było opuścić średnik, gdyż
następnym słowem jest end, które kończy instrukcję złożoną.
Procedury, funkcje, moduły.
Procedury i funkcje umożliwiają podzielenie części wykonawczej programu na fragmenty zapisane w wyodrębniony sposób w części
opisowej bloku. Różnica pomiędzy procedurą a funkcją polega na tym, że zadaniem procedury jest zwykle obliczenie jednej lub kilku
wartości, a zadaniem funkcji jest obliczenie jednej wartości.
Spowodowanie wykonania funkcji lub procedury w części wykonawczej bloku następuje za pomocą odwołania.
Opis procedury lub funkcji, który podaje się w części opisowej,
rozpoczyna się od nagłówka, po czym występuje blok zakończony
średnikiem. Nagłówek procedury różni się od nagłówka funkcji.
W pierwszym przypadku rozpoczyna się od słowa procedure, a w
drugim od słowa function.
Przykład procedury:
procedure liczenie ( a,b :real; var s,r :real );
begin
s:=a+b; r:=a-b; end;
Za pomocą funkcji to samo zadanie wyglądało by to następująco:
function suma ( a,b:real ) :real; begin
suma:=a+b end;
function roznica ( a,b:real ): real; begin
roznica:=a-b; end;
Procedury i funkcje można połączyć w większe jednostki programowe
zwane modułami. Moduły są pamiętane w oddzielnych zbiorach dyskowych, a ich użycie w określonym programie wymaga tylko ich
deklaracji. Dla zadeklarowania jednego modułu służy konstrukcja:
uses pascal;
gdzie pascal jest jego nazwą . Jeśli deklarujemy kilka modułów, to ich nazwy oddzielamy przecinkami np
uses pascal3, pascal2, pascal6;
Twórcy języka programowania Turbo Pascal 7.0 pogrupowali wiele
standartowych procedur i funkcji w oddzielne moduły. Poza modułem
nazwie System, w którym znajdują się m.in. procedury umożliwiające wprowadzenie danych do programu i wyprowadzenie wyników, użycie każdego innego modułu wymaga odpowiedniej deklaracji w programie.
Przykład programu i jego analiza
program kalkulator;
uses crt;
var a,b,c,d,e,f : real; { określenie zmiennych jako liczby rzeczywiste }
begin
clrscr; { czyści ekran jak DOS'owska komenda cls }
write('podaj wartość pierwszej liczby: ');
readln(a); { wczytanie pierwszej liczby }
write('podaj wartość drugiej liczby: ');
readln(b); { wczytanie drugiej liczby }
writeln; { odstęp jednej linii }
c:=a+b; { dodawanie liczb }
d:=a-b; { odejmowanie }
e:=a*d; { mnożenie }
f:=a/d; { dzielenie }
write('suma liczb : '); writeln(c);
write('różnica liczb : '); writeln(d);
write('iloczyn liczb : '); writeln(e);
write('iloraz liczb : '); writeln(f);
readkey; { program czeka na naciśnięcie dowolnego klawisza }
end. { kończy cały program }
W programie została wykorzystana instrukcja przypisania a także kilka nowych komend tj. Writeln, readln, readkey.
Pierwsze polecenie pozwala pisać i wczytywać do programu dowolne
teksty, drugie zatrzymuje program i czeka na wprowadzenie danej
wartości, zaś trzecie oczekuje naciśnięcia dowolnego klawisza, aby
zakończyć działanie programu.
Gdy załadujemy program wpisując za a = 4 i b=2 to na ekranie komputera ukaże się:
podaj wartość pierwszej liczby: 4
podaj wartość drugiej liczby: 2
suma liczb : 6
różnica liczb: 2
iloczyn liczb: 8
iloraz liczb: 2