Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

M1160 – Úvod do programování I RNDr. Jaroslav PELIKÁN, Ph.D. katedra počítačových systémů a komunikací Fakulta informatiky Masarykovy univerzity Botanická.

Podobné prezentace


Prezentace na téma: "M1160 – Úvod do programování I RNDr. Jaroslav PELIKÁN, Ph.D. katedra počítačových systémů a komunikací Fakulta informatiky Masarykovy univerzity Botanická."— Transkript prezentace:

1 M1160 – Úvod do programování I RNDr. Jaroslav PELIKÁN, Ph.D. katedra počítačových systémů a komunikací Fakulta informatiky Masarykovy univerzity Botanická 68a, BRNO kanc.: A209,  : +420 –

2 16/04/20152 Cíl předmětu Seznámit studenty se základními principy používanými při řešení problémů na počítači Předmět je vyučován s pomocí programova- cího jazyka Pascal Na konci tohoto předmětu bude student scho- pen: –navrhnout algoritmus řešící zadaný problém –zapsat algoritmus v programovacím jazyce Pascal –provést odladění programu

3 16/04/20153 Organizace předmětu 1 přednáška (učebna A318): –pondělí14:00 – 15:50 3 cvičební skupiny (učebny B116 a B117): –úterý16:00 – 17:50 –pátek10:00 – 11:50, 14:00 – 15:50 Předmět pokračuje v jarním semestru před- náškou M2160 Úvod do programování II

4 16/04/20154 Požadavky ke kolokviu Zápočet: –„úspěšné“ napsání průběžných písemek –splnění všech domácích úkolů (v termínu) –maximálně dvě neomluvené neúčasti na cvičení Zápočet musí být zapsán na ISu nejpozději 12 hodin před začátkem kolokvia Kolokvium probíhá ve dvou částech: –vypracování programu (na počítači): 90 minut –diskuse nad řešeným problémem + další otázky

5 16/04/20155 Literatura (1) Pelikán, Jaroslav: Prezentace k přednáškám z předmětu M1160 Úvod do programování I Dokumentace k Free Pascalu: Hála, Tomáš: Učebnice Pascalu, Computer Press 2002 Drózd, Januš – Kryl, Rudolf: Začínáme s pro- gramováním, Grada 1992

6 16/04/20156 Literatura (2) Wirth, Niklaus: Algoritmy a štruktúry údajov: Algorithm + Data Structures = Programs, Bratislava Alfa 1989 Teixeira, S. – Pacheco, X.: Mistrovství v Delphi 6, Computer Press 2002 Lischner, R.: Delphi v kostce, Computer Press 2000

7 16/04/20157 Programovací jazyky Strojový kód Jazyk symbolických instrukcí – Assembler –vědeckotechnické výpočty FORTRAN, ALGOL, COBOL –vědeckotechnické výpočty –hromadné zpracování dat SIMULA, LISP, SIMSCRIPT PL/1, ADA, Prolog, C/C++, C#, Pascal, Java

8 16/04/20158 Překladač – Compiler Program provádějící transformaci určitého textu (alfanumericky kódované informace, např. program v Pascalu) na posloupnost bytů reprezentující program ve strojovém kódu

9 16/04/20159 „Životopis“ programu Zdrojový kód (např. Pascal) Makroexpanze Překlad (compilation) –lexikální, syntaktická a sémantická analýza Sestavení (linking) Spuštění programu

10 16/04/ Programovací jazyk Pascal (1) prof. Niklaus Wirth, Švýcarsko 1971 – 1973 Základní cíle: –vytvořit jazyk vhodný pro výuku programování –definovat jazyk, jehož implementace na součas- ných počítačích vedou k efektivním a spolehli- vým programům

11 16/04/ Programovací jazyk Pascal (2) Hlavní výhody: –standardizace řídících struktur, které vedou k vytváření dobře strukturovaných a čitelných programů –bohatost datových typů –relativně snadná přenositelnost na různé typy počítačů

12 16/04/ Programovací jazyk Pascal (3) 1980 – zveřejněn návrh normy ISO jazyka Pascal Borland: –Turbo (Borland) Pascal 7.0 (pro MS-DOS) –Turbo Pascal for Windows –Borland Delphi – do verze Borland Delphi 2006 Embarcadero Technologies: –Delphi XE7 (pro Windows 2000, XP, Vista, 7, 8, Andorid, a iOS 7)

13 16/04/ Programovací jazyk Pascal (4) SourceForge.net – Free Pascal: –volně šiřitelný překladač jazyka Pascal –obsahuje vývojové prostředí pracující v texto- vém režimu –je k dispozici pro různé platformy, např.: Win32, Win64 Linux BSD Mac OS

14 16/04/ Základní pojmy (1) Identifikátor: –konečná posloupnost písmen a číslic začínající písmenem. Překladač rozlišuje vždy jen určitý počet znaků –nesmí obsahovat mezeru –název volíme mnemonicky –např.: teplota, tlak, x1, x2, …

15 16/04/ Základní pojmy (2) Klíčová slova: –slova mající v programovacím jazyce svůj speciální význam –identifikátor nesmí být pojmenovaný stejně jako klíčové slovo –neobsahují mezeru –např: program, begin, end,...

16 16/04/ Poznámka Dva sousedící identifikátory, klíčová slova nebo čísla musí být od sebe oddělena ales- poň jednou mezerou nebo jiným oddělova- čem Přebytečné mezery a oddělovače řádků jsou překladačem ignorovány Pascal nerozlišuje velká a malá písmena (case insensitive)

17 16/04/ Struktura programu v jazyce Pascal program identifikátor; uses seznam knihovních modulů; label deklarace návěští; const definice konstant; type definice datových typů; var deklarace proměnných; deklarace procedur a funkcí; begin end. část deklarací a definic příkazová část hlavička

18 16/04/ Příkazy výstupu (1) Příkaz Write: –obecný tvar: Write (p 1, p 2, …, p n ) –funkce: zobrazí hodnoty parametrů p 1, p 2, …, p n na standardním výstupu (nejčastěji obrazovka monitoru) Příkaz WriteLn: –obecný tvar: WriteLn (p 1, p 2, …, p n ) –funkce: zobrazí hodnoty parametrů p 1, p 2, …, p n na standardním výstupu a následně provede pře- chod na nový řádek (odřádkování)

19 16/04/ Příkazy výstupu (2) Poznámky: –parametry p 1, p 2, …, p n mohou být: výrazy (např. aritmetické nebo logické): –příkazy Write a WriteLn zobrazí jejich výsledné hodnoty proměnné: –příkazy Write a WriteLn zobrazí hodnoty těchto proměn- ných řetězce – posloupnosti znaků uzavřené v apostrofech: –příkazy Write a WriteLn provedou jejich zobrazení (bez jakékoliv změny) –příkaz WriteLn může být použit i bez parametrů, což způsobí pouze odřádkování

20 16/04/ Úprava programu Klíčová slova begin a end psát pod sebe Příkazy mezi begin a end odsadit o dvě až tři mezery Středník oddělující dva příkazy psát bezpro- středně za první z nich Záhlaví programu opatřit komentářem, který obsahuje zadání problému, jehož řešení pro- gram představuje

21 16/04/ Komentáře Poznámky, které jsou překladačem ignoro- vány Nemají žádný vliv na funkci programu Zapisují se: –mezi znaky (*, *) nebo {, } –za znaky // za poznámku jsou považovány všechny znaky až do konce řádku

22 16/04/ Konstanty a výrazy Konstanty: –pevně dané hodnoty určitého typu (např. číslo) –čísla v Pascalu celá (integer): 264, –1, 8765 reálná (real): , – , 1.0, 4E–5, 1.2E3 Pojmenované konstanty: –const identifikátor=konstanta; –např: const PI= ; HorniMez=40; Výrazy: –tvořeny pomocí +, –, *, /, (,), … –např: 8+4.5/2.0*2

23 16/04/ Formátovaný výstup Používán nejčastěji v souvislosti s parametry, jejichž výsledkem je číselná hodnota: –formátování celočíselných parametrů: obecný tvar: X:N funkce: –způsobí, že číslo dané parametrem X je zobrazeno na N míst –formátování reálných parametrů: obecný tvar: X:N:D funkce: –způsobí, že číslo dané parametrem X je zobrazeno celkem na N míst, z nichž D míst je vymezeno pro desetinnou část

24 16/04/ Proměnné Proměnná: –identifikátor, který může být v různých okam- žicích realizace programu spojen s různými hodnotami (téhož typu). –deklarace: var id 11, id 12, …, id 1n : datový typ 1 ; id 21, id 22, …, id 2m : datový typ 2 ; např: var i, j, k: integer; x, y: real; Poznámka: –konstanta ne; má pevně danou hodnotu

25 16/04/ Příkazy vstupu Příkaz Read: –obecný tvar: Read (p 1, p 2, …, p n ) –funkce: načte hodnoty parametrů p 1, p 2, …, p n ze standardního vstupu (nejčastěji klávesnice) Příkaz ReadLn: –obecný tvar: ReadLn (p 1, p 2, …, p n ) –funkce: načte hodnoty parametrů p 1, p 2, …, p n ze standardního vstupu a následně provede přechod na nový řádek Pozn.: V roli parametrů p 1, p 2, …, p n mohou vystupovat pouze proměnné

26 16/04/ Program v Pascalu Program v jazyce Pascal je tvořen symboly a oddělovači Symboly: –speciální symboly –slovní symboly –identifikátory –čísla –znakové řetězce –návěští

27 16/04/ Speciální symboly + - * /., : ; :=.. += -= *= /= = <> >= ( ) [ { } $ % # ^ (* *) (..)

28 16/04/ Speciální symboly – ekvivalence [je ekvivalentní (. ]je ekvivalentní.) {je ekvivalentní(* }je ekvivalentní*)

29 16/04/ Slovní symboly (1) Klíčová (rezervovaná) slova: –and, array, as, asm, begin, case, class, const, constructor, destructor, dispose, div, do, downto, else, end, except, exit, exports, false, file, finalization, finally, for, function, goto, if, implementation, in, inherited, initialization, inline, interface, is, label, library, mod, new, nil, not, object, of, on, operator, or, out, packed, procedure, program, property, raise, record, reintroduce, repeat, self, set, shl, shr, string, then, threadvar, to, true, try, type, unit, until, uses, var, while, with, xor

30 16/04/ Slovní symboly (2) Modifikátory: –absolute, abstract, alias, assembler, cdecl, cppdecl, default, export, external, far, far16, forward, index, local, name, near, nostackframe, oldfpccall, override, pascal, private, protected, public, published, read, register, safecall, softfloat, stdcall,virtual, write

31 16/04/ Identifikátory (1) Identifikátor může mít libovolnou délku, ale Free Pascal rozlišuje jen prvních 255 znaků Písmeno Číslice Podtržítko Písmeno Podtržítko

32 16/04/ Identifikátory (2) Podtržítko: Číslice: _ 09

33 16/04/ Identifikátory (3) Písmeno: Hexadecimální číslice: AZaz ČísliceAFaf

34 16/04/ Čísla (1) Celá: –dekadická: –hexadecimální: Číslice Hex. číslice$ – + – +

35 16/04/ Čísla (2) –binární: Bin. číslice% – + –pozn.: binární číslice: 01

36 16/04/ Čísla (3) Reálná: Exp: Číslice – +. Exp – + e EČíslice

37 16/04/ Řetězce (1) Posloupnost (žádného nebo více) znaků uzavřených mezi apostrofy napsaná na jednom řádku Rozlišují se velká a malá písmena Může obsahovat české znaky a mezery Může obsahovat i řídící („netisknutelné“) znaky

38 16/04/ Řetězce (2) Znak: libovolný znak ASCII Hodnota: celé číslo ‘‘ Znak #Hodnota

39 16/04/ Návěští Označují pascalovský příkaz Od příkazu se oddělují dvojtečkou (:) Celá čísla bez znaménka Free Pascal umožňuje použít i identifikátor Posloupnost číslic Identifikátor

40 16/04/ Oddělovače Mezera Tabulátor Oddělovač řádku Poznámky (komentáře): –mohou obsahovat libovolnou posloupnost znaků včetně oddělovače řádků –mohou být všude tam, kde se může objevit mezera

41 16/04/ Poznámka – mezery Nesmí se vyskytnout v: –klíčových slovech –identifikátorech –dvojznacích, např.: := <> (*.. atd.


Stáhnout ppt "M1160 – Úvod do programování I RNDr. Jaroslav PELIKÁN, Ph.D. katedra počítačových systémů a komunikací Fakulta informatiky Masarykovy univerzity Botanická."

Podobné prezentace


Reklamy Google