Presentation is loading. Please wait.

Presentation is loading. Please wait.

Programovací jazyk programovací jazyk Pascal Delphi

Similar presentations


Presentation on theme: "Programovací jazyk programovací jazyk Pascal Delphi"— Presentation transcript:

1 Programovací jazyk programovací jazyk Pascal Delphi
udalosťami riadené programovanie

2 Programovací jazyk algoritmický jazyk – umožňuje zápis postupnosti vykonávania príkazov programovací jazyk – formalizuje algoritmický jazyk do zápisu, ktorý dokáže spracovať prekladač a na základe neho realizovať príkazy prostredníctvom nemysliaceho zariadenia (obvykle počítača) programovanie – analógia algoritmizácie, no navyše so zápisom v príslušnom programovacom jazyku

3 Vývoj programovacích jazykov
40-te roky 20. storočia - programovanie v strojovom jazyku počítača 50-te roky 20. storočia - programovanie v jazyku symbolických adries programovací jazyk fortran (FORmula TRANslation) programovací jazyk algol (ALGOrithmic Language) programovací jazyk basic (Beginners All-Purpose Symbolic Instruction Code) okolo programovací jazyk pascal (systematické, štruktúrované programovanie) okolo programovací jazyk C (+ prechod k objektovo orientovanému programovaniu) 90-te roky 20. storočia - vývoj komplexnejších verzií jazykov s cieľom využitia nových možností predovšetkým osobných počítačov (grafika, zvuk, multimédiá) - programovanie riadené udalosťami (Visual Basic) súčasnosť – programovacie jazyky nezávislé na platforme (Java, skriptovacie jazyky – PHP, ASP programovacie jazyky pre tvorbu aplikácií), .NET platforma

4 Kompilátor a interpreter
programovanie pozostáva z: napísania zdrojového kódu vykonania zadaných príkazov: počítač môže pristupovať k vykonávaniu kódu dvoma spôsobmi: zdrojový kód preloží do strojových inštrukcií (exe súbor) – prekladaču hovoríme kompilátor, procesu prekladania kompilácia, chyby v kóde musia byť odstránené pred spustením C, Pascal zdrojový kód sa vykonáva „za behu“ programu, procesoru ho prekladá interpreter príkaz po príkaze skupina základných syntaktických chýb je odhalená na začiatku, časť až počas behu programu Basic, Java

5 Programovací jazyk Pascal
jazyk vhodný na výučbu autor: Niklaus Wirth (nar. 1934) profesor informatiky na zurišskej univerzite, vedúci návrhár pri tvorbe jazykov Algol W, Pascal, Modula, Modula-2, Oberon prvá verzia 1971 úprava 1974 ISO norma 1981 najväčší rozmach – verzia od fy Borland momentálne sa používa na SŠ jazyk Object Pascal = základ pre Delphi (tiež Borland)

6 Tvar programu v pascale
všeobecný tvar: Program meno; deklarácie a definície objektov; Begin {začiatok hlavného programu} vlastný program - algoritmus prepísaný do programovacieho jazyka End. {koniec hlavného programu} príkazy sú oddelené bodkočiarkou

7 Základné algoritmické konštrukcie
sekvencia: begin prikaz1; prikaz2; ... prikazn; end; vetvenie: if podmienka then p1 else p2 if podmienka then begin p11; p12; p1m end else begin p21; p22; p2n;

8 Základné algoritmické konštrukcie II.
neúplné vetvenie: if podmienka then p1 alebo if podmienka then begin p11; p12; ... p1m end;

9 Základné algoritmické konštrukcie III.
cyklus: s pevným počtom opakovaní od menšieho k väčšiemu for i:=zac to kon do prikaz; for i:=zac to kon do begin prikaz1; ... prikazn; end; s pevným počtom opakovaní od väčšieho k menšiemu for i:=kon downto zac do begin

10 Základné algoritmické konštrukcie IV.
cyklus: s podmienkou na začiatku while podmienka do prikaz; while podmienka do begin prikaz1; prikaz2; ... prikazn; end;

11 Základné algoritmické konštrukcie V.
cyklus: s podmienkou na konci repeat prikaz; until podmienka; // pokiaľ nebude splnená podmienka prikaz1; prikaz2; ... prikazn;

12 Problém prepis inštrukcií je známy, zatiaľ však chýbajú prostriedky umožňujúce vstup a výstup údajov v pascale používame príkazy read (readln) a write (writeln) nebudeme však pracovať s pascalom v čistej forme, ale budeme sa orientovať do prostredia Delphi kde je všetko na prvý pohľad úplne inak

13 Udalosťami riadené programovanie
Delphi = RAD (Rapid Application Development – rýchly vývoj aplikácií) program pozostáva z komponentov elementárne prvky, ktorých spájaním sa vytvára aplikácia majú svoje vlastnosti (farba, zobrazovaný text, poloha) dokážu reagovať na udalosti (kliknutie myši, stlačenia tlačidla) beh aplikácie je riadený udalosťami neprogramujeme postupnosť operácií od spustenia programu po jeho ukončenie (o to sa stará systém), ale každú udalosť zvlášť – napr. to, čo sa má odohrať po kliknutí na tlačidlo, pri posune myšou ponad komponent a pod.

14 aplikácia pozostáva z formulárov, na ktoré sa umiestňujú komponenty
Program v Delphi aplikácia pozostáva z formulárov, na ktoré sa umiestňujú komponenty základná stavebná jednotka = formulár fyzicky pozostáva z dvoch súborov pas – zdrojový kód písaný programátorom (unit) dfm – popis vlastností komponentov umiestnených na formulári systém formulárov je riadený špeciálnym súborom označovaným ako Project obsahujúcim: zoznam formulárov štartovací kód aplikácie koncovka dpr

15 Prostredie Delphi

16 Delphi project zobrazenie prostredníctvom Project – View source

17 Formulár v Delphi po spustení Delphi zobrazený automaticky spolu s kódom (prepínanie cez F12) v prípade zatvorenia výber zo zoznamu

18 bez napísania jediného riadku kódu máme k dispozícii aplikáciu
Aplikácia v Delphi bez napísania jediného riadku kódu máme k dispozícii aplikáciu spúšťanie F9 (Run-Run) výsledok je nám k ničomu => úprava aplikácie na svoj obraz vlastnosti formulára prostredníctvom Object inspectora Caption Color NIČ MOC

19 k dispozícii na paneli komponentov
Komponenty k dispozícii na paneli komponentov pre začiatok zaujímavý Button vloženie do formulára dvojklikom alebo klikom na komponent a na jeho miesto uloženia umožňuje naprogramovať činnosť, ktorá sa má odohrať po kliknutí naň dvojklik automaticky vytvorí v kóde miesto pre zadanie kódu = udalostná procedúra

20 Udalosť onClick pre Button
názov udalosti špecifikuje o akú udalosť ide

21 Prvý program vložením príkazu Close sa postaráme o to, aby tlačidlo formulár po kliknutí uzavrelo.

22 Zmena farby formulára Napíšte program, ktorý prostredníctvom tlačidiel bude meniť farbu formulára na modrú, zelenú a červenú. tlačidlá vkladajte vždy znova – nekopírujte ich kopírovaním sa skopíruje aj odkaz na udalosť, ktorá sa má pri kliknutí odohrať prepíšte vlastnosť Caption tlačidla pre každé tlačidlo „naprogramujte“ zmenu vlastnosti formulára, napr.: Form1.Color := clBlue Form1 hovorí, že ide o formulár Color, že budeme meniť farbu – vlastnosť je od objektu (komponentu) oddelená bodkou := - príkaz priradenia, „Nastav!“ clRed – konštanta definovaná v systéme pre farby, predpona cl popisuje., že ide o farbu, Red definuje samotnú farbu.

23 Uloženie aplikácie program v Delphi pozostáva z viacerých súborov
vhodné pre každú aplikáciu vytvoriť osobitný adresár: dpr – Delphi project - súbor projektu – jeho názov je zároveň názvom aplikácie i programu. Nesmie obsahovať medzery a diakritiku. pas – zdrojový kód unitu napísaný používateľom, pre každý formulár osobitný, dfm – zloženie (vzhľad a zoznam komponentov) formulára pridružené k zdrojovému kódu s rovnakým názvom (vytvára sa automaticky pri ukladaní zdrojového kódu). označená ikona uloží všetky neuložené súbory

24 Vstup a výstup vstup sa najčastejšie realizuje prostredníctvom komponentu Edit, do ktorého možno vkladať jeden riadok textu zapísaný text je uložený vo vlastnosti Text výstup môže byť realizovaný napr. pomocou komponentu Label. zobrazovaný text je vo vlastnosti Caption

25 Prvá „skutočná“ aplikácia
Napíšte aplikáciu, ktorá vás na základe mena zadaného do Editu pozdraví prostredníctvom Labelu. riešenie možno vykonať napr. po kliknutí na tlačidlo vzhľad: texty sú v labeloch label pre pozdrav má nastavený väčší font prostredníctvom vlastnosti Font obsah Editu je vymazaný tak, že v jeho vlastnosti Text je vymazaný pôvodný text – Edit1

26 udalosť pre kliknutie na tlačidlo
Kód pre pozdrav udalosť pre kliknutie na tlačidlo procedure TForm1.Button1Click(Sender: TObject); begin Label2.Caption:='Ahoj '+Edit1.Text; end; treba nastaviť text pre správny Label meno z Editu1 sa pridá k textu „Ahoj“ text, ktorý sa má zobraziť rovnako ako v kóde sa uvádza v apostrofoch text pridávame operáciou „+“

27 v zložitejších úlohách potreba používania premenných
Údajové typy v zložitejších úlohách potreba používania premenných každá premenná musí byť deklarovaná – uvedené jej meno a typ typ premennej obsahujúcej text používa kľúčové slovo string deklarácia prebieha za hlavičkou udalostnej procedúry pred kľúčovým slovom begin.

28 Príklad Pomocou premennej vytvorte program, ktorý z dvoch editov prečíta meno a priezvisko a pozdraví rovnako ako v predošlom príklade.

29 udalosť pre kliknutie na tlačidlo:
Deklarácia a kód udalosť pre kliknutie na tlačidlo: procedure TForm1.Button1Click(Sender: TObject); var celemeno:string; begin celemeno:='Ahoj '+Edit1.Text+' '+Edit2.Text; Label3.Caption:=celemeno; end;

30 Vypočítajte obsah a obvod obdĺžnika.
Objemy a obsahy Vypočítajte obsah a obvod obdĺžnika. na matematické operácie s premennou typu string nevystačíme pre celočíselné operácie sa využíva premenná typu integer ( ) v starších verziách ( ) umožňuje pracovať len s celými číslami obsah Editu je typu string => potreba konverzie z textu na číslo: StrToInt opačne – z čísla na text (kvôli výpisom): IntToStr

31 Kód procedure TForm1.Button1Click(Sender: TObject);
var a,b,obvod,obsah:integer; begin a:=StrToInt(Edit1.text); b:=StrToInt(Edit2.text); obvod:=2*(a+b); obsah:=a*b; Label3.Caption:=StrToInt(obvod); Label4.Caption:=StrToInt(obsah); end;

32 Jednoduchá kalkulačka
Vytvorte aplikáciu, ktorá dokáže realizovať základné matematické operácie (súčet, súčin, rozdiel) s dvoma celými číslami. riešenie je analógiou s predchádzajúcim, na každú operáciu možno použiť osobitné tlačidlo

33 Delenie nulou - podmienka
Pridajte do aplikácie delenie – ošetrite výpočet pre delenie nulou procedure TForm1.Button1Click(Sender: TObject); var a,b,vysledok:integer; begin a:=StrToInt(Edit1.text); b:=StrToInt(Edit2.text); if b=0 then begin ShowMessage('Nulou nedelime!') // okno so správou end else begin vysledok:=a div b; Label3.Caption:=StrToInt(vysledok); end;

34 Typ real program dokáže realizovať len celočíselné delenie
v prípade použitia znaku „/“ sa program odmietne skompilovať na prácu s desatinnými číslami je potrebné zaviesť typ real procedure TForm1.Button1Click(Sender: TObject); var a,b:integer; vysledok:real; begin a:=StrToInt(Edit1.text); b:=StrToInt(Edit2.text); if b=0 then begin ShowMessage('Nulou nedelime!') end else begin vysledok:=a/b; Label3.Caption:=FloatToStr(vysledok); end;

35 Podmienka - absolútna hodnota čísla
Zistite absolútnu hodnotu reálneho čísla pomocou podmienky. procedure TForm1.Button1Click(Sender: TObject); var a,abs:integer; begin a:=StrToInt(Edit1.text); if a>0 then abs:=a else abs:=-a; Label3.Caption:=IntToStr(abs); end;

36 Faktoriál – cyklus so známym počtom opakovaní
Zistite faktoriál pre zadané číslo. procedure TForm1.Button1Click(Sender: TObject); var n,i,fakt:integer; begin n:=StrToInt(Edit1.text); fakt:=1; for i:=1 to n do fakt:=fakt*i; Label3.Caption:=IntToStr(fakt); end;

37 Cyklus while Nájdite najväčší spoločný deliteľ dvoch čísel pomocou euklidovho algoritmu. procedure TForm1.Button1Click(Sender: TObject); var a,b,fakt:integer; begin a:=StrToInt(Edit1.text); b:=StrToInt(Edit2.text); while a<>b do begin if a>b then a:=a-b else b:=b-a; end; ShowMessage(InttoStr(a));


Download ppt "Programovací jazyk programovací jazyk Pascal Delphi"

Similar presentations


Ads by Google