Előadás a "Pascal ABC programozási környezet" témában. Programozási nyelvABC Pascal előadás számítástechnika és IKT órára témában Objektumorientált programozás alapjainak bemutatása Pascal ABC

19.11.2020 Biztonság

Programozás Pascalban



1970-ben legalább két nagy esemény történt a programozás világában - megjelent az operációs rendszer UNIX rendszerés egy új programozási nyelv, amelyet Niklaus Wirth professzor, a zürichi Svájci Szövetségi Műszaki Intézet munkatársa készített. Wirth a nagy 17. századi francia matematikus és filozófus, Blaise Pascal tiszteletére nevezte el.

Niklaus Wirth

Blaise Pascal


Pascal nyelv kényelmes a kezdeti programozási képzéshez, nem csak

mert megtanítja, hogyan kell helyesen programot írni, de azt is, hogyan kell helyesen

programozási problémák megoldási módszereinek kidolgozása


  • tól a latin ábécé nagy- és kisbetűi A-tól z-ig, valamint az aláhúzás (_), amely szintén betűnek számít.
  • A kis- és nagybetűk felcserélhetők (azonos jelentésűek);
  • Arab számok 0 1 2 3 4 5 6 7 8 9 ;
  • speciális egyedi karakterek: + – * / = . , : ; ^ $ # @ ;
  • speciális páros jelek: () { } ;
  • összetett jelek: = .. (* *) (..) .

A program felépítése

A Pascal program a következőkből áll:

// Címsor (nem kötelező rész)


  • A védjegyek leírása;
  • Állandók meghatározása;
  • A típusok meghatározása;
  • Változók leírása;
  • Az eljárások és funkciók leírása.

  • kezdődik { a program kezdete }
  • { programtest }
  • vége. { program vége }

A program felépítése

Program program neve; ( program címe }

Felhasználások …; (modul csatlakozási szakasz)

Címke; { címkeleíró rész }

Const; { állandó leírás rész }

Toure; { típusdefiníciós rész }

Var; { változóleírás szakasz }

Funkció; Eljárás; { funkciókat és eljárásokat ismertető szakaszban }

... { operátorok rész }


Miből áll a program?

Állandó – állandó mennyiség, amelynek neve van.

Változó – változó mennyiség, amelynek neve van (memóriacella).

Eljárás – néhány műveletet leíró segédalgoritmus (kör rajzolása).

Funkció – egy segédalgoritmus a számításokhoz (négyzetgyök kiszámításához, bűn) .


Állandók

i2 = 45; { egész szám }

pi = 3,14; { valós szám }

q = " Vasya "; { karakterlánc }

L = igaz; { logikai érték }

az egész és a tört részt egy pont választja el egymástól

Használhat orosz betűket!

két jelentése lehet:

  • Igaz (igaz, "igen") Hamis (hamis, "nem")
  • Igaz (igazság, „igen”)
  • Hamis (hamis, „nem”)

Változók

Változó típusok:

  • egész szám ( egész ) igazi ( igazi ) char ( egy karakter ) húr ( karakterlánc ) logikai ( logikus }
  • egész szám ( egész }
  • igazi ( igazi }
  • char( egy karakter }
  • húr ( karakterlánc }
  • logikai( logikus }

Változók deklarálása ( memóriafoglalás ) :

változó– változó

típus - egész számok

var a, b, c: egész szám ;

változónevek listája


Példa program

ír(' Ez az első programom ! ’);

Futtassa a programot, és nézze meg az eredményt.


Következtetési operátor

Ír(' szöveg ’); - operátor a szöveg és a változók képernyőn történő megjelenítéséhez (a kurzort az aktuális sorban hagyja);

Writeln(' szöveg ’); - operátor a szöveg és a változók képernyőn történő megjelenítéséhez (új sorra mozgatja a kurzort);


Gyakorlat

  • Jelenítse meg a következő szöveget a képernyőn:

Sziasztok!

Én vagyok az SSH No. 3 legjobb programozója!

Felhívjuk figyelmét, hogy a szöveg két különböző sorban jelenik meg.



Számítsa ki a matematikai kifejezéseket ABC Pascal


  • A műveletek prioritása ABC Pascal ugyanaz, mint a matematikában.
  • Csak meg kell tanulnia, hogyan kell helyesen írni a matematikai kifejezéseket a nyelven Pascal

Aritmetikai műveletek

Művelet

Név

Kiegészítés

Kivonás

Szorzás

Osztály (csak valódi típus)

A div B

Az egész rész kiszámítása (nem teljes hányados)

A maradék kiszámítása

Kiszámítja:

10 div 3 18 mod 4


Példák

Matematikai felvétel

Felvétel nyelven Pascal

37(25+87,5)-17(4,6+1,9)

37*(25+87.5)-17*(4.6+1.9)

(a +2* b-3*c)/(5*a+4)

(a+b)/(a-b)+a*b/3.14

Tizedespont be Pascal ponttal jelöljük


Alapfelszereltség

Pascal függvénye

Matematikai jelölés

Név

Az X szám abszolút értéke (modulus)

Egy szám négyzetre emelése

Kiállító

A négyzetgyök kiszámítása

Kiszámítja egy szám tört részét

A legközelebbi egész számra kerekít

Levágja a töredékes részt

Határozza meg eredmény:

Frac(16,68); forduló(16,68); Trunc(16,68);


Alapfelszereltség

Pascal függvénye

Matematikai jelölés

Név

Szinusz számítás

Koszinusz számítás

A szám egész része

A természetes logaritmus kiszámítása

Szám hatványra emelése

0 és X közötti véletlen számot ad vissza

Szám π


Fokozatok be Pascal radiánra kell konvertálni

Felvétel nyelven Pascal

Matematikai jelölés


PL operátorok Pascal ABC


:= kifejezés; Egy aritmetikai kifejezés tartalmazhat konstansokat változóneveket aritmetikai műveletek jeleit: konstansokat változóneveket aritmetikai műveletek jeleit: + - * / div mod + - * / div mod függvény zárójeleket hív () függvény hív zárójelet () osztás egész szorzás osztás maradéka szélesség ="640"

Hozzárendelés operátor

változó neve := kifejezés ;

Egy aritmetikai kifejezés tartalmazhat

  • konstansok változók nevei aritmetikai műveletek előjelei:
  • állandók
  • változónevek
  • aritmetikai műveletek jelei:

+ - * / div mod

  • + - * / div mod
  • függvény hívja a zárójeleket ()
  • függvényhívások
  • kerek zárójelek ()

teljes felosztás

szorzás

az osztály többi része


Mely operátorok hibásak?

program qq;

var a, b: egész szám;

x, y: valós;

10 := x;

y:= 7 , 8;

b:= 2,5;

x:= 2*(a + y);

a:= b + x;

a változó nevének a jeltől balra kell lennie :=

az egész és a tört részek el vannak választva pont

Egész változóba nem lehet valós értéket írni


Beviteli operátor

olvasni egy); { változó érték bevitele a)

olvas(a, b); { változó értékek bevitele a És b)

Hogyan írjunk be két számot?

szóközzel elválasztva:

keresztül Belép :


Következtetési operátor

írj egy); { kimeneti változó értéke a)

ír ln (a); { kimeneti változó értéke a És lépjen új sorba }

writeln(" Helló! "); { szöveges kimenet }

writeln(" Válasz: ", c); { kimeneti szöveg és változó érték c)

writeln(a, "+", b, "=", c);


Két szám összeadása

Feladat.Írjon be két egész számot, és jelenítse meg az összegüket.

A legegyszerűbb megoldás:

program qq;

var a, b, c: egész szám;

olvas(a, b);

c:= a + b;

writeln(c);


Komplett megoldás

program qq;

var a, b, c: egész szám;

writeln(" Írjon be két egész számot ");

olvas(a, b);

c:= a + b;

writeln(a, "+", b, "=", c);

számítógép

Jegyzőkönyv :

Írjon be két egész számot

25+30=55

felhasználó



KISZÁMÍTJA:

12 div 4 =

1 9 div 5 =

12 mod 3 =

1 36 mod 10 =


Pascalon

A matematika nyelvén

Az x szám modulusa

Négyzetre helyezés x

csonka(x)

e x

forduló (x)

Törtrész számítás

x négyzetgyöke

A legközelebbi egész számra kerekít

Véletlen (x)

Levágja a töredékes részt

Szinusz x

Exp/y*ln(x))

0 és x közötti véletlen számot ad vissza

Koszinusz x

[ x ]

x nál nél

Ln x


Házi feladat

1. Számítsa ki a kör kerületét és területét egy adott sugarú körben!

2. Számítsa ki egy derékszögű háromszög kerületét a száraiból!




Feltételes operátor ( teljes alak )

az elágazás teljes formája

feltétel

Akció1

Akció2

következtetés


then begin (mi a teendő, ha a feltétel igaz) end else begin (mi a teendő, ha a feltétel hamis) end; Jellemzők: a pontosvessző NEM kerül az else kezdet és vége elé. A pontosvessző NEM kerül az else elé, ha van egy utasítás a blokkban, akkor eltávolíthatja a kezdet és vége szavakat" width="640"

Feltételes operátor (hosszú alak)

ha feltétel akkor kezdődik

{ }

másképp kezdődik

{ mi a teendő, ha a feltétel hamis }

Sajátosságok:

  • előtt más NEM tegyél pontosvesszőt, ha egy utasítás van a blokkban, akkor eltávolíthatod a szavakat kezdődik És vége
  • előtt más NEM pontosvessző kerül hozzáadásra
  • ha van egy utasítás a blokkban, akkor eltávolíthatja a szavakat kezdődik És vége

Feltételes operátor (nem teljes alak )

hiányos elágazási forma

feltétel

Akció

következtetés


then begin (mi a teendő, ha a feltétel igaz) end; Jellemzők: ha egy utasítás van a blokkban, akkor eltávolíthatja a kezdet és a vég szavakat; ha egy utasítás van a blokkban, akkor eltávolíthatja a kezdet és a vég szavakat" width="640"

Feltételes operátor (hiányos űrlap)

ha feltétel akkor kezdődik

{ mi a teendő, ha a feltétel igaz }

Sajátosságok:

  • ha van egy utasítás a blokkban, akkor eltávolíthatja a szavakat kezdődik És vége
  • ha van egy utasítás a blokkban, akkor eltávolíthatja a szavakat kezdődik És vége


Házi feladat

  • Írjon programot, amely az első számot ötszörösére csökkenti, ha nagyobb, mint a második.

2. Írjon programot, amelyben a változó értéke! Val vel képlettel számolva: a+b , Ha A páratlan És a*b , Ha A még .



b, akkor c:= a + b else c:= b – a;" width="640"

Házi feladat

1. Írjon programot a probléma megoldására:

A). Az x értéke ismert. Számítsd ki ha

b). A pont koordinátái adottak. Derítse ki, hogy ez a pont a 3. koordinátanegyedben van-e?

2. Határozza meg a változó értékét! c a következő programrészlet végrehajtása után:

a:= 6 ;

b:= 15 ;

a:= b – a*2;

ha a b akkor

c:= a + b

else c:= b – a;




Ciklus - Ez ugyanazon műveletsorozat ismételt végrehajtása.

  • ciklussal híres lépések száma ( hurok paraméterrel ) ciklussal ismeretlen lépések száma ( hurok feltétellel )
  • ciklussal híres lépések száma ( hurok paraméterrel )
  • ciklussal ismeretlen lépések száma ( hurok feltétellel )



:= kezdő érték végső értékhez do begin (huroktest) end; Változó csökkentése 1-gyel (-1. lépés): for variable:= kezdeti érték lefelé a végső értékig kezdje (hurok törzse) end;" width="640"

Növelje meg a változót 1-gyel (1. lépés):

számára változó := kezdő érték nak nek

végső érték csináld kezdődik

{ huroktest }

Változó csökkentése 1-gyel (1. lépés) :

számára változó := kezdő érték le

végső érték csináld kezdődik

{ huroktest }


Sajátosságok:

  • egész szám ) nak nek ) vagy -1 ( le ) kezdődik És vége nem kell írnod: nak nek ) soha nem hajtják végre (
  • egy ciklusváltozó csak egész szám lehet ( egész szám )
  • a hurokváltozó változás lépése mindig 1 ( nak nek ) vagy -1 ( le )
  • ha csak egy állítás van a ciklus törzsében, akkor a szavak kezdődik És vége nem kell írnod:
  • ha a végső érték kisebb, mint a kezdeti érték, hurok ( nak nek ) soha nem hajtják végre ( a feltétel ellenőrzése a ciklus elején, ciklus előfeltétellel)

nekem:= 1 8-ra csináld

writeln( " Helló " );


  • Nem megengedett a ciklusváltozó megváltoztatása a ciklus törzsében
  • a cikluson belüli kezdő és végértékek megváltoztatásakor a lépések száma nem változik:

nekem:= 1 hogy n kezdd el

writeln( " Helló " );

n: = n + 1;

nincs hurok




do begin (loop body) end; Jellemzők: használható nehéz körülmények: ha csak egy operátor van a ciklus törzsében, akkor a kezdet és a vége szavakat nem kell beírni: összetett feltételek használhatók: ha csak egy operátor van a ciklus törzsében, akkor a kezdet és a vége szavak nem szükségesek be kell írni: while (a d o kezdődik (a ciklus törzse) vége; while a d o a := a + 1;" width="640"

míg feltétel csináld kezdődik

{ huroktest }

Sajátosságok:

  • összetett feltételeket használhat: ha csak egy operátor van a ciklustörzsben, akkor a szavak kezdődikÉs vége nem kell írnod:
  • Összetett feltételeket használhat:
  • ha csak egy állítás van a ciklus törzsében, akkor a szavak kezdődikÉs vége nem kell írnod:

míg (a d o kezdje

{ huroktest }

míg a d o

a:= a + 1;


b d o a:= a – b; a:= 4; b:= 6; míg a d o d:= a + b;" width="640"
  • a feltétel minden alkalommal újraszámításra kerül, amikor belép a hurokba
  • ha a hurok bejáratánál a feltétel hamis, a ciklus soha nem hajtódik végre
  • ha a feltétel soha nem válik hamissá, a program ciklusokat hajt végre

a:= 4; b:= 6;

míg a b d o

a:= a – b;

a:= 4; b:= 6;

míg a d o

d: = a + b;




a következő feltételig: " width="640"

Hurok utófeltétellel egy ciklus, amelyben a ciklus végén állapottesztet hajtanak végre.

huroktest

amíg feltétel


FELADAT

Határozzuk meg az összes természetes szám négyzetösszegét 1-től 100-ig! Oldjuk meg ezt a problémát mindhárom típusú hurok használatával.


"Viszlát" .

Program qq;

var a, s: egész szám;

s:=s+a*a;

írás(ok);


100; írás(ok); vége." width="640"

"Előtt"

Program qq;

var a, s: egész szám;

s:=s+a*a;

100-ig ;

írás(ok);


"Paraméterrel"

Program qq;

var a, s: egész szám;

a:=1-től 100-ig

s:=s+a*a;

írás(ok);


Feladat.

1 és 8 közötti egész számok négyzeteinek és kockáinak megjelenítése.

Sajátosság:

Ugyanazokat a műveleteket 8 alkalommal hajtják végre.


"ciklus" blokk

én 1 := én * én;

én 2 := én 1 * én;

huroktest

én, én 1 , én 2


Program

program qq;

var i, i1, i2: egész szám;

az i:=1-től 8-ig kezdje

i1:= i*i;

i2:= i1*i;

writeln(i, i1, i2);

kezdő érték

változó

végső érték


Hurok csökkenő változóval

Feladat. 8 és 1 közötti egész számok négyzeteinek és kockáinak megjelenítése (fordított sorrendben).

Sajátosság: a hurokváltozónak csökkennie kell.

Megoldás:

for i:=8 1 kezdje

i1:= i*i;

i2:= i1*i;

writeln(i, i1, i2);

le- nak nek




Sor – ez az azonos típusú elemek csoportja, amelyek közös névvel rendelkeznek, és a memóriában a közelben találhatók.

Sajátosságok:

  • minden elem azonos típusú az egész tömbnek ugyanaz a neve
  • minden elem azonos típusú
  • az egész tömbnek ugyanaz a neve
  • minden elem a közelben található a memóriában

Példák:

  • osztályos tanulók névsora lakások egy házban iskolák a városban
  • osztályos tanulók névsora
  • lakások egy házban
  • iskolák a városban
  • évi levegő hőmérsékleti adatok

SZÁM tömb elem

(INDEX)

sor

JELENTÉS tömb elem

SZÁM (INDEX) tömb elemei: 2

JELENTÉS tömb elemei: 10


Tömbök deklarálása

Miért kell bejelenteni?

  • meghatározni Név tömb határozza meg típus tömb határozza meg elemek száma Kiemel helyet az emlékezetben
  • meghatározni Név sor
  • meghatározni típus sor
  • meghatározni elemek száma
  • Kiemel helyet az emlékezetben

Egész számok tömbje:

Méret állandóval:

elemeket

záró index

kezdő index

var A : egész számból álló tömb[ 1 .. 5 ] ;

var A: egész számok tömbje ;

const N=5;


Mi a baj?

var a: egész számok tömbje;

A:= 4,5;

var a: egész szám ["z".."a"] tömbje;

A["B"]:= 15;

["a".."z"]

var a: egész számok tömbje;

A := "X";


Közlemény:

Billentyűzet bemenet:

Elemenkénti műveletek:

Kimenet a kijelzőn:

const N = 5;

var a: egész számok tömbje;

én: egész szám;

a =

a =

a =

a =

a =

mert i:=1-től N-ig kezdjük

write("a[", i, "]=");

olvas(a[i]);

Miért ír ?

ha i:=1-től N-ig, akkor a[i]:=a[i]*2;

writeln(" Sor A:");

az i:=1-től N-ig írás(a[i]:4);

Sor V:

1 0 24 68 112 26


Feladat:

1. Belép c 5 elemből álló billentyűzettömb, keresse meg a tömb összes elemének számtani átlagát.

Példa:

Írjon be öt számot:

4 15 3 10 14

számtani átlag 9.200

MEGOLDÁS:


Program qq;

var N: egész számok tömbje;

az i:=1-től 5-ig kezdje

write("N[",i,"]");

az i:=1-től 5-ig kezdje

write("átlag", k:6:2);

2. dia

A program felépítése

A Pascal ABC program a következő formájú: program program neve; modul csatlakozási szakasz leírása szakasz kezdete operátorok vége. Az első sort programfejlécnek nevezzük, és nem kötelező. A modulok csatlakoztatására szolgáló szakasz a szolgáltatásszóhasználattal kezdődik, amelyet a modulnevek listája követ, vesszővel elválasztva. A leírás rész tartalmazhat változókat, konstansokat, típusokat, eljárásokat és függvényeket leíró részeket, amelyek tetszőleges sorrendben követik egymást. Lehet, hogy hiányzik a modulcsatlakozási rész és a leírás rész. Az operátorokat pontosvessző választja el egymástól.

3. dia

program program neve;modul-kapcsolatot használ sectionvar descriptions sectionbegin operatorsend.

4. dia

Program - Program; Felhasználások – Használat; Var– leírás; Begin - Beginning; Vége – vége.

5. dia

6. dia

7. dia

8. dia

9. dia

10. dia

11. dia

12. dia

A uses parancs egy külön ablakban nyílik meg.

  • 13. dia

    Írjuk meg az első programunkat: Adjunk nevet a programunknak, latin betűkkel írjuk, és ne kezdődjön számmal. Minden utasítás - ; A Write egy parancs, amelyet a nézetablakba kell kiadni.

    14. dia

    1. feladat.

    Mutassuk ki a köszöntőt: "Jó napot!" Programpriml; (opcionális eleme a programnak Ennek a programnak a neve prim1 (vegye figyelembe, hogy a program neve nem tartalmazhat szóközt, betűvel kell kezdődnie, csak latin betűkből állhat, számokból és egyes szimbólumokból, pontok és vesszők nem megengedettek ). Nincs leíró rész, és azonnal ott van az operátorok szakasza, amely a kezdeti szolgáltatás szóval kezdődik a TurboPascal 7.0-ban, utána jön a nyelvi operátor)begin (Szöveg kiírása) writeln("Jó napot"); (At a program vége TurboPascal 7.0-ban az end operátor szükséges.)end.

    15. dia

    Program priml; begin writeln("Jó napot");end.

    16. dia

    2. feladat Az N változó értékének bevitele a billentyűzetről

    programInp; Crt-t használ; var N: egész szám; beginClrScr; write("Írjon be egy számot a billentyűzetről:"); readln(N); (Itt a program megáll, és vár a billentyűzetről érkező bevitelre. Írjon be egy számot a billentyűzeten, például 153, és nyomja meg az Enter billentyűt) writeln("Számot írt be ", N); readln ( Ez az üres bemeneti utasítás. Itt a program ismét szünetel, és megvárja az Enter billentyű lenyomását. Ezalatt lesz ideje megnézni a kimenetet a képernyőn.) end.

    17. dia

    programInp; usesCrt; var N: egész szám; beginClrScr; write("Írjon be egy számot a billentyűzetről:"); readln(N); writeln("Számot írt be ", N); readlnend.

    18. dia

    A testsebesség kiszámítása toronyból való leeséskor

    Program Piza; const (Ez a konstansok szakasza. A var szakasz elé kerül) G=9.8; (A konstans típusa automatikusan, a szám alakja alapján kerül meghatározásra. Ebben az esetben a tizedespont jelenléte miatt valós típus) var V,H: real; begin write("Adja meg a torony magasságát:"); readln(H); V:=Sqrt(2*G*H); writeln("Falling speed", V:6:3): (A szöveg és a szám összetapadásának elkerülése érdekében az aposztrófok közé szóköz kerül) readln end.

    19. dia

    ProgramPiza; constcrt; G=9,8; var V,H,N:valós; start clrscr; write("Adja meg a torony magasságát:"); readln(H); V:=Sqrt(2*G*H); writeln("esési sebesség",V:6:3): readlnend. crt, clrscr; - képernyő tisztítás

    20. dia

    21. dia

    Pascal ABC rendszer

    A Pascal ABC rendszert a Pascal nyelvű programozás oktatására tervezték, és az iskolásoknak és a kisdiákoknak szól. A szerzők szerint a kezdeti programozási képzésnek meglehetősen egyszerű és barátságos környezetben kell történnie, ugyanakkor ezeknek a környezeteknek a programozási nyelvi képességek tekintetében közel kell lenniük a szabványhoz, és meglehetősen gazdag és modern szabványos rutinkönyvtárakkal kell rendelkezniük. A Pascal nyelvet sok orosz tanár az egyik legjobbnak ismeri el a kezdeti tanuláshoz. Az MS DOS-orientált BorlandPascal környezet azonban elavult, a gazdag képességekkel rendelkező BorlandDelphi környezet pedig nehézkes egy kezdő programozó számára. Így a Borland Delphiben egy rendezvényprogram megírásával való tanulási kísérlet sok nehézséget okoz a tanulónak, és számos rosszul kialakított készséghez vezet. A Pascal ABC rendszer a DelphiPascal nyelven alapul, és a legegyszerűbb programokról a moduláris, objektumorientált, esemény alapú és komponens programozásra való fokozatos átállásra készült. A Pascal ABC egyes nyelvi konstrukciói a fővel együtt lehetővé teszik az egyszerűsített használatot, ami lehetővé teszi a használatukat a tanulás korai szakaszában. Például előfordulhat, hogy a moduloknak nincs interfész szakasza és megvalósítási szakasza. Ebben az esetben a modulok felépítése szinte megegyezik a fő programéval, ami lehetővé teszi, hogy az „Eljárások és funkciók” témával párhuzamosan kezdje el a tanulást. A metódustestek közvetlenül az osztályokon belül definiálhatók (Java és C# stílusban), ami lehetővé teszi, hogy szinte azonnal osztályokat hozzon létre a rekordok, eljárások és függvények megtanulása után. A Pascal ABC programozási rendszer számos modulja kifejezetten oktatási célokra készült: Modul raszteres grafika A GraphABC megteszi az objektumokat, bár képességei szinte megegyeznek a BorlandDelphi grafikus képességeivel. Nem eseményprogramokban érhető el, és lehetővé teszi villogásmentes animációk könnyű készítését. Az Events modul lehetővé teszi egyszerű eseményprogramok létrehozását objektumok használata nélkül (az események közönséges eljárási változók). Az Időzítők és Hangok modulok lehetővé teszik időzítők és hangok létrehozását, amelyek szintén eljárási stílusban vannak megvalósítva. Ezek a modulok akár konzolos programokban is használhatók. A konténerosztályok Containers modulja lehetővé teszi, hogy alapvető adatstruktúrákkal (dinamikus tömbök, veremek, sorok, halmazok) dolgozzon osztályként. Modul vektoros grafika Az ABCObjects az objektum-orientált programozás alapjainak gyors elsajátítására készült, emellett meglehetősen összetett játék- és oktatási programok létrehozását is lehetővé teszi. A VCL Visual Components modul lehetővé teszi eseményvezérelt alkalmazások létrehozását fő forma Delphi stílusban. A VCL osztályok kissé leegyszerűsítettek a hasonló Delphi osztályokhoz képest. Van egy űrlapszerkesztő és egy objektumellenőr. Az űrlap programkód segítségével történő visszaállításának technológiája lehetővé teszi, hogy egyetlen fájlt használjunk egy alkalmazáshoz a fő űrlappal (!). A Pascal ABC nyelve gépelt mutató aritmetikát (C-stílus), valamint komplex típust biztosít a komplex számokkal való munkavégzéshez. A Pascal ABC fordító egy front-end fordító. Ez azt jelenti, hogy nem hoz létre futtatható kódot .exe fájlként, hanem a fordítás eredményeként egy programfát hoz létre a memóriában, amelyet aztán a beépített interpreter segítségével végrehajt. Ennek eredményeként a program sebessége körülbelül 20-szoros lassabb sebesség ugyanez a BorlandPascal környezetben lefordított program 50-szer lassabb, mint a BorlandDelphi környezetben lefordított program. A Pascal ABC rendszerben a hallgató úgynevezett ellenőrizhető feladatokat végezhet, amelyek véletlenszerű kiindulási adatokkal biztosítják a probléma megfogalmazását, a bemeneti-kimeneti műveletek ellenőrzését, a megoldás helyességének ellenőrzését, valamint a nyilvántartás vezetését. problémamegoldás. A tesztelt feladatok egy elektronikus programozási feladatfüzet, ProgramingTaskbook formájában valósulnak meg, amely 1000 különböző bonyolultságú programozási feladatot tartalmaz (az egyszerű feladatoktól a fájlokat, mutatókat és rekurziót érintő problémákig), valamint végrehajtók Robot és Draftsman formájában. , szánt gyors tanulás programozási alapismeretek általános és középiskolásoknak. A Pascal ABC & ProgrammingTaskbookMiniEdition szabadon terjesztett verziója tartalmazza az elektronikus problémafüzet mini-változatát (200 feladat), valamint egy lecsupaszított feladatkészletet a Robot és a Draftsman előadók számára. A Pascal ABC & ProgrammingTaskbookCompleteEdition a feladatok teljes készletét tartalmazza.

    1 csúszda

    PASKAL Belyakova Natalya Aleksandrovna Informatika, technológia és képzőművészet tanára, MBOU 6. számú középiskola, Kholmsk, Szahalin régió Pascal ABC

    2 csúszda

    3 csúszda

    Adattípus REAL Ha egy szám vesszővel rendelkezik, és tört, akkor REAL-nak nevezzük. A valós számok tárolásához a Pascal egy speciális adattípust használ – REAL. A programba való beírásához használja a VAR (változó) operátort PÉLDA: program p15 ; VAR a, b, c: REAL ; Kezdés és ilyesmi……….

    4 csúszda

    REAL változók: program summa ; VAR A, B, C: REAL ; Kezdje A:= 3,5; B: = 7,6; C:=A + B; writeln("összeg = ", c) ; Vége. ________________________________________________ Minden valós számot nem vesszővel, hanem ponttal írunk!!!

    5 csúszda

    Formátumok valós változók írásához: Normál alak: 0,7 írható 0,7-ként vagy .7 -2,1 írható -2,1-ként. Jelölés kitevővel: Egy szám mantisszának (a szám törtrésze) van megszorozva 10-zel. teljesítmény 2700 = 2,7*10 A 10-es szám E betűvel, utána a hatvány: 2,7E3 0,002 = 2*10 A 10-es szám E betűvel, majd a hatvány: 2E-3 3 - 3

    6 csúszda

    REAL változók: program z16 ; var a, b, c: valós; kezdődik a:= 17,3; b:= 3,4; c:=a+b; writeln("A+B kiegészítés = ", c); c:=a-b; writeln("A-B kivonás = ", c); c:=a*b; writeln("A*B szorzása = ", c); c:=a/b; writeln("A/B osztás = ", c); Vége.

    7 csúszda

    REAL típusú funkciók: PROGRAM Z18 ; VAR A, B: REAL; KEZDÉS A:= 2,0 ; (négyzetgyök számítás) B:= SQRT(A); WRITELN (négyzetgyök (Sqrt (A)) = ", B) ; (szinuszszámítás) B:= SIN (A); WRITELN (a szám szinusza (SIN (A) = ", B) ; (koszinusz számítás) B : = COS (A); WRITELN ('a szám koszinusza (COS (A) = ", B) );

    8 csúszda

    (arktangens kiszámítása) B:= ARCTAN (A); WRITELN (a szám arktangense (Arctan (A)) = ", B) ; (a logaritmus kiszámítása) B:= LN (A); WRITELN ('a szám logaritmusa (LN (A) = ", B) ); (az E szám felemelése A hatványra) B:= EXP (A); WRITELN ('A hatványának kitevője (EXP (A) = ", B) ; (Pi kiszámítása) B:= PI; WRITELN ( 'pi szám (Pi) = ", B ) ; vége.

    9. dia

    (arktangens kiszámítása) B:= ARCTAN (A); WRITELN ('a szám arktangense (Arctan (A)) = ", B); ________________________________ Megadható egy valós szám kimenete. A „B” változó értékéhez 6 számjegyet adunk meg, ebből 4 a tizedespont: (arktangens kiszámítása) B:= ARCTAN (A ); WRITELN ('szám arktangense (Arctan (A))) = ", B: 6: 4) ; ____________________________________

    10 csúszda

    A rendszer fő operátorai: Programnév program Kezdete és vége Kezdete és vége. Változók VAR Integer integer Valós szám valós Kimenet a képernyőre Write(‘x= ‘, x) Kimenet a képernyőre új sor Writeln('x= ', x) Az Abs szám modulusa (x) Négyzetre emelés Sqr(x) A szám négyzetgyöke Sqrt(x) A szám szinusza Sin (x) A szám koszinusza Cos (x) A szám arktangense szám Arctan(x) Az Ln szám logaritmusa (x) Egy szám felemelése X hatványára Exp (x) A Pi szám kiszámítása Pi

    11 csúszda

    FELADAT: z15) Feltételezve, hogy a szorzás és a négyzetesítés művelete azonos bonyolultságú, írja be az optimális kifejezést: Z15a) Z15b) Z15c) Z15d) Z15e) Z16) Írjon be egy feladatot az alapvető számtani műveletekre (minta a notebookban) Z17 ) Számítsa ki a kifejezést: Z18) Írjon feladatot a d:=8 szám standard függvényeinek kiszámítására (modulus, négyzetgyök, szám négyzete, szinusz, koszinusz, érintő, arctangens, kotangens, egy szám logaritmusa) Z19) Írja fel másodfokú egyenlet diszkriminánsának kiszámítására szolgáló program. Állítsa be az együtthatókat a programban a hozzárendelési operátorral Z20) Számítsa ki a kifejezést:

    12 csúszda

    Z21) Adott a d kör átmérője. Határozza meg a hosszát () Z22) Adott a téglalap alakú paralelepipedon kocka éleinek hossza a, b, c. Határozza meg térfogatát és felületét Z23) Határozza meg egy adott R sugarú kör L kerületét és S területét: L=2πR, S = πR Z24) Adott 2 a és b szám. Határozzuk meg a számtani átlagukat Z25) Adott 2 nemnegatív a és b szám. Határozza meg geometriai átlagukat (szorzatuk négyzetgyöke) Z26) Határozza meg két pont távolságát adott x1 és x2 koordinátákkal a számtengelyen: |x2 - x1|. 2

    13. dia

    Irodalom: M. E. Abrahamyan. Programozási feladatfüzet. Elektronikus problémakönyv a programozásról. Verzió 4.6./ Rostov-on-Don - 2007 2. Ushakov D.M., Yurkova T.A. Pascal iskolásoknak. Szentpétervár: Péter, 2010. - 256 p.

    1. dia

    2. dia

    1. lecke. Első programom Az első programunk egy üdvözlőműsor lesz. Egyszerűen megjeleníti a szöveget a számítógép képernyőjén, és befejezi a munkáját. Megnézzük a program tervezésének alapvető szabályait is. program Első; begin write("Helló,"); writeln("barátok!"); writeln("Ez a második sor") vége. Az első sor a program címe. A program egy szolgálati szó; Először is a programunk neve, kitalálhatod magad. A sor végén a ";" A Pascal utasítások listázásakor a „;” karaktert kell közéjük tenni. . Ezután következik a program törzse. Mindig a kezd szóval kezdődik. Nincs ";" a sor végén. A következő parancs vagy utasítás a HELLO szót jeleníti meg a képernyőn; A kimeneti szöveg mindig aposztrófok közé kerül. (" "). Ez az operátor a FRIENDS szót jeleníti meg a képernyőn! és a kurzort a következő sorra mozgatja. Mert Az "ln" karakterek a writel utasításban azt jelentik, hogy "sor" - egy sor. Itt a sor végén ";" nem kötelező, mert Ez az utolsó operátor (nem kell „;”-t tenni a vége elé). End – befejezi a program törzsét, és egy pontnak kell lennie a végén. A program végrehajtásának eredményeként azt kapjuk

    3. dia

    Hogyan telepítsünk programot a számítógépre? Először nézzük meg azokat a szakaszokat, amelyeken a felhasználónak (programozónak) keresztül kell mennie ahhoz, hogy a képernyőn lássa a program helyes eredményét.

    4. dia

    A program számítógépen történő létrehozásának szakaszainak vázlata. Start Szerkesztési hiba? Fordítási hiba? Építési hiba? Futtatási hiba? Vége Igen Igen Igen Igen Nem Nem Nem Nem Nem

    5. dia

    Futtassa a Pascal ABC programot az asztalon lévő ikonról Főmenü Ugrás - F10 Szerkesztőablak Ugrás a főmenüből - Alt Output ablak Indítsa el a program végrehajtását - F9

    6. dia

    Írja be az első programot a szerkesztőablakba, és indítsa el az F9 gombbal. program Első; begin write("Helló, "); writeln("barátok!"); writeln("Ez a második sor") vége. A program összeállításának és végrehajtásra indításának folyamatai a program szövegének beírása után azonnal a Futtatás (F9) parancs meghívásával kombinálhatók. A programból való kilépés a Fájl menü Kilépés parancsával történik. 1. feladat Írjon programot, amely megjeleníti a szöveget a képernyőn: Fontos Ne keverje össze az Írást és az Írást! Ellenőrizzük.

    7. dia

    2. feladat. Írjon programot, amely a „Helló mindenkinek!” kifejezést jeleníti meg. 20-szor - 5 sorból 4 oszlopból álló táblázatban. Nyom. Használjon több szóközt az oszlopok közötti tér beállításához. Csak egy írási nyilatkozatot írjon először? Ez egy kifejezést jelenít meg (ne feledkezzünk meg a szóközökről). Ezután másolja át még négyszer, hogy megkapja a teljes sort. A végén ne felejtsen el egy törést beírni a következő sorba (writeln). Nem kell másolni az elejét és a végét! Ellenőrizzük.