Gyermekágy Pascal

(Action Művelet Operand típusú eredmény típusa)
= Egyenlő Kompatibilis egyszerű mutató, több karakterlánc vagy csomagolt Boole karakterlánc
<> Nem egyenlő Kompatibilis egyszerű mutató, több húr vagy csomagolt logikai húr
<Меньше чем Совместимый простой, указатель, множественный строковый или упакованный строковый Булевский
> Több mint kompatibilis egyszerű mutató, több húr vagy csomagolt logikai húr
<= Меньше или равно Совместимый простой, указатель, множественный строковый или упакованный строковый Булевский
> = Nagyobb vagy egyenlő Kompatibilis egyszerű mutató, több húr vagy csomagolt logikai húr
=> Kompatibilis felülbírálja a Boole típusok
<= Подмножество Множества совместимых типов Булевский
A bal oldali elem a több operandus: bármely felsorolásosztályok t; Jobbra: több kompatibilis t Boole

+___ kívül
-____ kivonás (jel változás)
* ____ szorzás
/ ____ osztály
(A) DIV (B) ___ egész része A / B
(A) MOD (B) ___ fennmaradó A / B
ABC (X) ___ x abszolút értéke
SQR (X) ___ X négyzeten
SUCC (X) ___ X + 1
PRED (X) ___ X-1
SIN (X) ___ sine
COS (X) ___ koszinusz
Arctan (X) ___ cotanges
LN (X) ___ logaritmusát
EXP (X) ___ kiállító
SQRT___ négyzetgyök
ODD (X) ___ paritás (igaz), és páratlan (HAMIS)
INC (X) ___ X: = X + 1
INC (X, N) ___ X: = X + N
(DEC X) ___ X: = X-1
DEC-t (X, N) ___ X: = X-N
FRAC (X) ___ visszatérése törtrészének
INT (X) ___ egész része a visszatérő
PI ___ visszaadja a valós szám értékét Pi
TRUNC (X) ___ nyírás törtrész
ROUND (X) ___ kerekítési törtrészének
ORD (C) ___ meghatározza a sorszámát a karakter C.
CHR (K) ___ határozza meg a sorozatszámot a

(Action Művelet Operand típusú eredmény típusa)
Tagadás nem (bit) Egész Egész
és D (bit) Integer Integer
vagy OR (bit) A A
XOR kizáró VAGY (bit) A A
shl Shift Left A A
SHR Shift jobbra A A

Az összes különböző programozási nyelvek, mindegyikben vannak bizonyos kötelező sor nyelvi konstrukciók, függetlenül attól, hogy milyen gondolatok a nyelv alapjait. Bármilyen nyelven kell vennie annak szükségességét, hogy válasszon egyet a számos megoldás bizonyos feltételeket.

Példa: Ha a munkanap vége, akkor menjen haza, különben tovább kell dolgoznunk.

Bármilyen nyelven kell biztosítani arra, hogy ismételje meg a parancsot anélkül megismételték írás.

Példa: Minden egyes számhoz 1-100 do:

Találunk az összege osztók.
Kiírjuk a talált pénzt.


Akkor továbbra is példát csapatok legyen bármilyen nyelven, hogy ez a nyelv volt hasznos. Például meg kell tudni számítani aritmetikai kifejezések, nyomtassa ki a változók értékei a képernyőn, és így tovább. Elmondhatjuk, hogy a programozási nyelv jelen kell lennie minden olyan tervek és utasítások, amelyek felmerülhetnek írásakor algoritmusok. Ezért feltételezhető, hogy a parancs programozási nyelv - egyfajta parancs algoritmusok, így továbbra is, hogy megtanulják a nyelvet a következő programozási:


Írjon egy algoritmus oroszul.


Válassza ki a parancsot kapta a felvételt.


Írja elkötelezett csapat nyelven parancsokat.

1. példa: Meg kell adnia a két szám, meg az átlagos, és megjeleníti a kapott értéket a képernyőn. Kötelező algoritmus a következő:

Adja meg a számát A.
Adja meg a számát B.
Compute G = (A + B) / 2.
Nyomtató értéke S.


Nyilvánvaló, hogy annak érdekében, hogy rögzítse a program ezt az algoritmust, szükségünk van a bemeneti parancs változókat, kimeneti változókat és értékeket számítunk. A Pascal Entry Operator írott szó olvasni, írni nyilatkozat O szó. kiszámításakor az üzemeltető által rögzített jel: =. de a neve ennek a kezelő nem kiszámítása és a feladat. Most már a kódrészletet felírható a következőképpen:

A feladat szereplő Pascal a következő formában:


Változó. = Aritmetikai vagy logikai kifejezés


Az aritmetikai kifejezés utal bármilyen érvényes nyelvi kifejezés (lásd a „Kezelés”). Vannak azonban, bizonyos funkciók, kívül hagyása súlyos problémákhoz vezethet:


Típusú kifejezés számítva a jogot az üzemeltetőnek jelnek meg kell egyeznie a típusú változó, a bal oldalon. Például, ha a változó típusú Real (valós szám), és a kifejezés típusúnak kell lennie Real. Emlékeztetni kell arra, hogy bizonyos műveleteket (például számítás a négyzetgyök) egy olyan eredményt típusú Real, függetlenül attól, hogy milyen típusú érvelés. Ez azt jelenti, hogy ha kiszámítja a gyökér a jobb vagy a sinus stb A változó jobb típusúnak kell lennie Real.


Ügyelni kell arra, időközönként értékeket, amelyek a számított érték. Ez abból a tényből következik, hogy minden egyes típus egy jól meghatározott értéktartomány. Ha a kifejezés ad egy értéket ezen a tartományon kívül, akkor a program során hiba lép fel, a fordító nem ismeri fel. Pl egészek meghatározott tartományban -32.768-32.767

Példa. Adjon meg egy számsor, és meghatározza, hogy milyen sokan pozitív.


Az ötlet a következő megoldásokat: megvan a fejét egy változót, ami majd játszani a számláló pozitív számok, és minden egyes alkalommal, amikor a bemeneti szám pozitív, akkor ez a számláló. És annak érdekében, hogy képes erre, szükségünk van egy szerkezet, amely lehetővé teszi, hogy végre bizonyos parancs csak akkor, ha a feltétel igaz.

Az algoritmus a következő:

Minden i 1-től N do

Ha a szám a> 0 Ez S = S + 1

Amikor a program felvétele ezen algoritmus lesz egy komoly probléma. Meg kell ismételten végrehajtani a két parancs: Írja be a számot, és ellenőrzi a pozitív. De mi már tudjuk, hogy miután a „DO” lehet rögzíteni csak egy parancsot. A kimenet a bevezetése egy összetett operátor. Komplex üzemeltető - egy csoportja kimutatások között írt a „Begin” és az „End”. Az ilyen számítógép-kezelő felfogható egyetlen szolgáltató és be lehet állítani, például egy ciklusban. Ezt szem előtt tartva, a program kerül rögzítésre az alábbiak szerint:

ha a> 0, akkor s: = s + 1;

Az angol szó „ha” fordítva a szót, „ha”, és az üzemeltető: ha a> 0, akkor s: = s + 1; Ez az úgynevezett feltételes utasítást. A design az új üzemeltető a következő: miután a „ha” feltétel rögzíteni kell, és egy operátor (nehéz lehet), írásbeli után a „majd”, amely kerül sor, ha a feltétel igaz. A feltételes operátor van még egy formában:

ha a feltétel akkor nyilatkozat else;

Ebben a formában, ha a feltétel igaz, akkor a parancs hajtódik végre, rögzített szó után „majd”, és ha a feltétel hamis, akkor az üzemben kerül rögzítésre, miután a „más”.

Azok, akik csak most kezdett gyakorolni programozás Pascal, gyakran egy baklövés egy feltételes állítás. Vegyük ezt a példát:

Ha t = 5, akkor a t: = 6; mást t: = 8;

A felvett után nyilatkozatot t: = 6 résztől. Tedd ki a fenti okokból, hogy minden szereplő Pascal pontosvesszővel végződjön. De nem fejezte be, mint az üzemeltető, és logikailag teljes design. Itt, t: = 6, feltételes elágazást szerkezete még nem fejeződött be, és a pontosvessző nem a helyén. Meg kell tenni csak a nyilatkozatot követően a „más”. Ezért a megfelelő tervezés lesz írva a következő:

Ha t = 5, akkor a t: = 6 mást t: = 8;

Tekintsük a következő problémát: Tegyük két mennyiség L és U vehet csak három érték, és ezek az értékek nem független egymástól, azaz U érték kerül értékek értékétől függően, hogy az értéke L. Tegyük fel, hogy ez az összefüggés a következő: Ha L = 1 U = 4; Ha L = 4 U = -5; ha L = 0 U = 11; Tegyük fel továbbá, hogy az L érték bevitele a billentyűzetről, és az U-érték alapján kerül kiszámításra a megadott L. írunk, hogyan lehet végrehajtani Pascal:

Vegyünk egy másik érdekes szituáció. Tegyük fel, hogy a kapcsolat L U kicsit bonyolultabb. Régi kapcsolatos értékek ugyanúgy, mint korábban, de most L bármilyen értéket felvehet, és ha L értéket vesz fel, kivéve azokat, le, akkor U = 20; Bemutatjuk a helyzet segítségével CASE építése.

A teljesítménye ez a kialakítás, amikor az L értéket vesz más, mint 1, 4, 0, U értékét veszi 20. Lehetőség van, és egy ilyen szerkezet a kezelő, ahol U kerül ugyanaz az érték különböző L. Itt egy példa:

Kapcsolódó cikkek