Object Pascal, Szkoła średnia, Informatyka


Object Pascal/Struktura programu, podstawowe elementy języka

[edytuj]

> Object Pascal > Struktura programu, podstawowe elementy języka »

< Object Pascal

Spis treści

 [ukryj]

[edytuj]Struktura programu

program nazwa_programu (parametry); //nagłówek

{część definiująca}

begin

{część operacyjna}

end.

[edytuj]Przykład

program ;

{$APPTYPE CONSOLE}

uses SysUtils;

var

a:integer

begin

writeln ('podaj liczbe');

readln (a);

if a mod 2=0 then writeln ('liczba parzysta')

else writeln ('liczba nieparzysta')

end.

[edytuj]Uwagi

Program może występować w dwóch wariantach:

[edytuj]Podstawowe elementy języka

[edytuj]Słowa kluczowe

Zastrzeżone słowa języka (Object) Pascal. Są integralną częścią języka i nie mogą być definiowane przez programistę:

and | array | as | asm | begin | case | class | const | constructor | destructor | dispinterface |div | do | downto | else | end | except | exports | file | finalization | finally | for | function | goto | if | implementation | in | inherited | initialization | inline | interface | label | library | mod | nil | not | object | of | or | out | packed | procedure | program | property | raise | record | repeat | resourcestring | set | shl | shr | string | then | threadvar | to | try | type | unit | until | uses | var | while | with | xor

[edytuj]Zmienne

Zmienna to identyfikowany przez nazwę tzw. "pojemnik" na wartość wykorzystywaną podczas działania programu. Każdą zmienną należy deklarować (patrz: deklaracja zmiennych), czyli określić jakiego typu ma być zmienna. Każda zmienna w Object Pascalu posiada swoją nazwę (identyfikator) oraz typ. Identyfikator zmiennej zależy tylko od programisty, nie może zawierać słowa kluczowego (zobacz również typy zmiennych, opisane w osobnym dziale:Typy zmiennych).

[edytuj]Każda zmienna musi zostać:

Do wprowadzania wartość "z zewnatrz" do programu służą procedury: read i readln. Wartość zmienniej można również przypisać stosując instrukcję przypisania.

[edytuj]Podział zmiennych:

[edytuj]Identyfikatory

Definicja identyfikatora w notacji BNF ma postać:

<identyfikator> ::= <litera> { <litera> | <cyfra> }

<litera> ::= 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 | _

<cyfra> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7| 8 | 9

Identyfikator to ciąg liter lub cyfr zaczynający się od litery (znak _ zaliczany jest do liter). Długość identyfikatora jest dowolna, ale tylko pierwszych 255 znaków jest znaczące. Identyfikator nie może zaczynać się od cyfry, np. dozwolony jest identyfikator: _11 natomiast nie wolno użyć: 11_. Nie wolno również używać w identyfikatorach słów kluczowych.

Identyfikatory służą do oznaczania programów, procedur, funkcji, metod, parametrów formalnych, modułów, bibliotek DLL, typów, zmiennych, stałych, etykiet (identyfikator etykiety może być też liczbą), pól rekordów i obiektów.

Każdy identyfikator ma określony zakres ważności. Bez wnikania w szczegóły można przyjąć, że zakres ten obejmuje blok, w którym wystąpiła odpowiednia definicja (deklaracja) identyfikatora, łącznie z blokami wewnętrznymi.

Szereg identyfikatorów posiada predefiniowane znaczenie, ich deklaracje są w poszczególnych modułach, nie są jednak słowami zastrzeżonymi. Jeżeli programista zdefiniuje taki identyfikator, to w zakresie jego ważności standardowe znaczenie jest przesłonięte, można je jednak odsłonić używając notacji:

nazwa-modułu.identyfikator

[edytuj]Dyrektywy języka

Predefiniowane słowa, które nie są zastrzeżone, czyli mogą być zdefiniowane przez programistę. Należą do nich np.
absolute | abstract | assembler | automated | cdecl | deprecated | dynamic | export | exports | external | far | forward | near | overload | override | pascal | platform | private | protected | public | published | read | register | reintroduce | safecall | stdcall | virtual | write

[edytuj]Operatory

[edytuj]Priorytety operatorów

Priorytet

Operatory

1.

jednoargumentowe (+, -, @, not)

2.

multiplikatywne (*, /, div, mod, and, shl, shr, as)

3.

addytywne (+, -, or, xor)

4.

relacyjne (=, <>, <, >, <=, >=, in, is)

[edytuj]Operatory arytmetyczne

Operatory

Typ argumentu

Typ wyniku

+, - (jednoargumentowe)

całkowity, rzeczywisty

Integer, Int64, Extended

+, -, *

całkowity, rzeczywisty

Integer, Int64, Extended

/

całkowity, rzeczywisty

Extended

div, mod

całkowity

Integer,Int64

[edytuj]Operatory logiczne

Operatory

Typ argumentu

Typ wyniku

NOT (negacja)

OR (alternatywa)

całkowity

całkowity

AND (koniunkcja)

logiczny

logiczny

XOR (różnica symetryczna)

całkowity

całkowity

SHL (przesunięcie w lewo)

całkowity

całkowity

SHR (przesunięcie w prawo)

całkowity

całkowity

[edytuj]Operatory relacyjne

=, <>, <, <=, >, >=

argumenty typu: prostego, łańcuchowego, znakowego, upakowany typ łańcuchowy (packed array [0..x] of char), Pchar (<,<=,>,>=)
wynik typu: Boolean

Uwagi:

Przykłady:

'abc' < 'bc' // true

'Object' + ' ' + 'Pascal' = 'Object Pascal' // true

[edytuj]Operatory teoriomnogościowe

Operatory

Typ argumentu

Typ wyniku

+ (suma zbiorów)

typ zbiorowy

typ zbiorowy

- (różnica zbiorów)

typ zbiorowy

typ zbiorowy

* (iloczyn zbiorów)

typ zbiorowy

typ zbiorowy

<= (jest zawarty, jest podzbiorem)

typ zbiorowy

Boolean

>= (zawiera, jest nadzbiorem)

typ zbiorowy

Boolean

= (równy)

typ zbiorowy

Boolean

<> (różny)

typ zbiorowy

Boolean

in (należy, jest elementem)

typ bazowy

Boolean

[edytuj]Operator konkatenacji

+

Przykład

'Object ' + 'Pascal' = 'Object Pascal'

[edytuj]Komentarze

Komentarze są to ciągi wyrazów, znaków nie mających wpływu na przebieg programu, oznacza się je w następujące sposoby:

{komentarz}

(*komentarz*)

//komentarz

[edytuj]Zapis liczb

[-2 147 483 648, 2 147 483 647]

[-$80000000, $7FFFFFFF]

część-całkowita [. część-ułamkowa]

writeln(liczba:szerokość_pola:liczba_miejsc_dziesiętnych

należy pamiętać, że w skład pola przeznaczonego na liczbę wchodzi również jej znak i kropka dziesiętna, a wykładnik zawsze posiada znak i wiodące zera. Przykład:

liczba:=123.123456789;

writeln(liczba:6:5);

pokaże w programie liczbę: 123.12345.

[edytuj]Łańcuchy

Łańcuch jest to ciąg znaków (maksymalnie 255) zapisanych w jednej linii i ujętych w apostrofy, znaków sterujących oraz znaków w postaci dziesiętnej i szesnastkowej poprzedzonych znakiem #.

Przykład:

[edytuj]Deklaracje

[edytuj]Deklaracja modułów

uses lista_nazw_modułów;

[edytuj]Deklaracja etykiet

label lista_etykiet;

[edytuj]Deklaracja stałych

const sekwencja_definicji_stałych;

Przykład:

const

a=3-1;

imie='Anna';

s= sqrt(25);

z:integer=2;

[edytuj]Deklaracja typów

type identyfikator_typu_1= opis_typu

identyfikator_typu_2= opis_typu

...

identyfikator_typu_n= opis_typu

[edytuj]Deklaracja zmiennych

var sekwencja deklaracji;

Przykład:

var

a,b:real;

c,d,e:integer;

begin

{dalszy ciąg programu}

Deklaracja zmiennych powinna się znajdować po nagłówku programu w części definiującej a przed słowem kluczowym begin. Składnia języka zabrania deklarowania zmiennych w treści programu.



Wyszukiwarka

Podobne podstrony:
Uruchamianie grafiki w środowisku Dev, Szkoła średnia, Informatyka
karta sieciowa, Szkoła średnia, Informatyka
Sem II Transport, Podstawy Informatyki Wykład XXI Object Pascal Komponenty
Sem II Transport, Podstawy Informatyki Wykład XIV i XV Object Pascal Funkcje i procedury
Podstawy Informatyki Wykład XI Object Pascal Podstawy programowania w Object Pascalu
Podstawy Informatyki Wykład XVI Object Pascal Obiekty
Sem II Transport, Podstawy Informatyki Wykład XII Object Pascal Instrukcje sterujące
Podstawy Informatyki Wykład XIII Object Pascal Funkcje i procedury
Praca na temat - Rejestr systemu Windows, Prace z przedmiotów informatycznych, szkola średnia
Podstawy Informatyki Wykład XVII Object Pascal Komponenty
Podstawy Informatyki Wykład XV Object Pascal Grafika
pascal 1, szkoła-informatyka-cosinus, cosinus, Programowanie strukturalne i obiektowe
Sem II Transport, Podstawy Informatyki Wykład XIX i XX Object Pascal Obiekty
Podstawy Informatyki Wykład XII Object Pascal Instrukcje sterujące
Sem II Transport, Podstawy Informatyki Wykład XVIII Object Pascal Grafika
Podstawy Informatyki Wykład X Object Pascal Jezyki programowania, Proste typy danych
Podstawy Informatyki Wykład XIV Object Pascal Tablice, rekordy i zbiory
Sem II Transport, Podstawy Informatyki Wykład XVI i XVII Object Pascal Tablice, rekordy i zbiory

więcej podobnych podstron