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

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

Informatika I 1. přednáška RNDr. Jiří Dvořák, CSc.

Podobné prezentace


Prezentace na téma: "Informatika I 1. přednáška RNDr. Jiří Dvořák, CSc."— Transkript prezentace:

1 Informatika I 1. přednáška RNDr. Jiří Dvořák, CSc.

2 Informatika I: přednáška 12 Obsah přednášky  Úvod do programování  Algoritmus a prostředky jeho vyjádření  Programovací jazyky a programovací styly  Úvod do jazyka Pascal  Úvod do prostředí Delphi

3 Informatika I: přednáška 13 Úvod do programování počítač program vstupyvýstupy Program je předpis pro transformaci vstupů na výstupy. Niklaus Wirth: program = algoritmus + datové struktury

4 Informatika I: přednáška 14 Algoritmus Algoritmus je konečný soubor pravidel, jež dávají návod k vyřešení určité třídy úloh. Základní požadavky na algoritmus  determinovanost (algoritmus musí být přesný a jednoznačný)  rezultativnost (v konečném počtu kroků se musí dospět k výsledku)  efektivnost (jednotlivé operace musejí být proveditelné v konečném časovém intervalu)  hromadnost (algoritmus se týká celé skupiny úloh téhož typu)

5 Informatika I: přednáška 15 Prostředky vyjádření algoritmu  Přirozený jazyk  Jazyk matematiky  Grafické prostředky (vývojové diagramy, struktogramy, … )  Pseudojazyky (liší se od programovacích jazyků volnějšími pravidly syntaxe)  Programovací jazyky

6 Informatika I: přednáška 16 Příklad slovního vyjádření algoritmu Euklidův algoritmus pro výpočet největšího společného dělitele dvou celých kladných čísel (předpokládáme, že zadaná čísla jsou uložena v proměnných M a N): 1. Urči zbytek R po celočíselném dělení hodnoty M hodnotou N. 2. Hodnotu N přesuň do proměnné M a hodnotu R do proměnné N. 3. Je-li N nulové, pak hodnota největšího společného dělitele je obsažena v M a výpočet končí. V opačném případě se výpočet vrací na krok 1.

7 Informatika I: přednáška 17 Programovací jazyky počítač ?. generace - přirozený jazyk? 4. generace - neprocedurální a problémově orientované jazyky 3. generace - procedurální jazyky vysoké úrovně 2. generace -assembler 1. generace - strojový jazyk

8 Informatika I: přednáška 18 Informace o programovacích jazycích

9 Informatika I: přednáška 19 Definice programovacího jazyka Složky definice programovacího jazyka:  Abeceda základní (terminální) symboly jazyka  Syntaxe pravidla pro tvorbu jazykových konstrukcí  Sémantika význam jazykových konstrukcí

10 Informatika I: přednáška 110 Překladače  Kompilační překladače generují program ve strojovém kódu, který pak může být opakovaně využíván.  Interpretační překladače interpretují příkazy programu. Jejich použití je méně efektivní, protože při každém výpočtu musí být program vždy znovu interpretován.

11 Informatika I: přednáška 111 Programovací styly Algoritmus = logika (funkce) + řízení CO SE DĚLÁ JAK SE TO DĚLÁ Imperativní styl- výrazná řídicí složka Procedurální jazyky (Fortran, Pascal, C,... ) Neimperativní styl - výrazná složka logiky (funkce) Neprocedurální jazyky  logické programování (Prolog)  funkcionální programování (Lisp, Haskell, … )

12 Informatika I: přednáška 112 Programovací jazyk Pascal Programovací jazyk Pascal navrhnul prof. Niklaus Wirth na počátku 70. let. Autor sledoval dva hlavní cíle:  vytvořit jazyk vhodný pro systematickou výuku programování, založený na jasných, jednoduchých a srozumitelných konstrukcích  umožnit jednoduchou a efektivní realizaci překladačů tohoto jazyka Některé významné implementace jazyka Pascal:  Turbo Pascal, Borland Pascal (nejen jazyk, ale také prostředí pro vývoj programů)  Object Pascal (součást programového prostředí Delphi)

13 Informatika I: přednáška 113 Lexikální jednotky jazyka Pascal  Symboly abecedy písmena, číslice, speciální symboly, klíčová slova  Identifikátory posloupnosti písmen a číslic začínající písmenem  Čísla celá, reálná (v desetinném nebo semilogaritmickém tvaru)  Řetězce posloupnosti znaků uzavřené apostrofy  Komentáře posloupnosti znaků uzavřené do složených závorek  Oddělovače lexikálních jednotek mezera, konec řádku, komentář

14 Informatika I: přednáška 114 Příklady lexikálních jednotek  Klíčová slova begin, end, if, for, while, mod  Identifikátory (nerozlišují se velká a malá písmena, místo písmena může být také podtržítko) alfa, X12, y23b, Beta_1, CelkovySoucet  Čísla 123, -58, 17.35, , 1E6, 2.5E-7 Pozn.: 2.5E-7 znamená 2,5 ·10  7  Řetězce 'alfa', 'Celkovy soucet = '  Komentáře {Cteni vstupnich udaju}

15 Informatika I: přednáška 115 Identifikátor Identifikátor slouží k označení konstant, typů, proměnných, položek záznamů, procedur a funkcí a jejich parametrů, … Ukázky syntaktické definice identifikátoru:  identifikátor  ::=  písmeno    písmeno  |  číslice   písmeno číslice písmeno identifikátor

16 Informatika I: přednáška 116 Výrazy Výraz je pravidlo pro získání nějaké hodnoty. Výraz může obsahovat konstanty, proměnné, volání funkcí, operátory a závorky. Volání funkce začíná jménem funkce, za nímž v závorkách následuje seznam parametrů oddělených čárkami. Operátory:  aritmetické (pracují s číselnými hodnotami a výsledkem je číselná hodnota): +, , *, /, div (celočíselné dělení), mod (zbytek po celočíselném dělení);  logické (pracují s logickými hodnotami a výsledkem je logická hodnota): not (negace), and (logický součin), or (logický součet); logické hodnoty jsou true (pravda), false (nepravda); negace je unární operátor, logický součin a součet jsou binární operátory;  relační (porovnávají dvě hodnoty stejného typu a výsledkem je logická hodnota): =, <> (nerovno),, >= (větší nebo rovno)

17 Informatika I: přednáška 117 Vyhodnocování výrazů Výrazy se vyhodnocují postupně zleva doprava při respektování priority operátorů a závorek. Aby byl výraz vyhodnocen, musí být zapsán do nějakého příkazu. Úrovně priority operátorů: volání funkcenejvyšší priorita not *, /, div, mod, and +, , or =, <>,, >= nejnižší priorita

18 Informatika I: přednáška 118 Příklady zápisu výrazů Matematický zápisZápis v Pascalu 2  b/c a/(b  c) (a+sin(x))/b (-b+sqrt(sqr(b)-4  a  c))/(2  a) (a<=x) and (x<=b)

19 Informatika I: přednáška 119 Přiřazovací příkaz proměnná:=výraz Výraz na pravé straně se vyhodnotí a jeho hodnota se přiřadí proměnné. Příklady přiřazovacích příkazů: X:=2 I:=I+1 y:=sqr(sin(x))-cos(x) D:=sqr(b)-4  a  c

20 Informatika I: přednáška 120 Příkazy vstupu a výstupu read(proměnná) readln(proměnná) příkazy vstupu readln write(výraz) writeln(výraz) příkazy výstupu writeln Příkazy vstupu mohou obsahovat několik proměnných, oddělených čárkami. Příkazy výstupu mohou obsahovat několik výrazů oddělených čárkami.

21 Informatika I: přednáška 121 Příklady příkazů vstupu a výstupu read(N); read(Zn1,Zn2); readln(a,b,c); readln; write(44); write(x); write((A+B)/2); write(N,sqrt(N); writeln('Prumer = ',Soucet/Pocet); writeln;

22 Informatika I: přednáška 122 Struktura programu v jazyce Pascal program jméno_programu; deklarace návěští; definice konstant; definice typů; deklarace proměnných; deklarace procedur a funkcí; begin příkaz1; příkaz2;. end. blok

23 Informatika I: přednáška 123 Příklad jednoduchého programu program prumer; var a,b,p:real; begin writeln('Zadej 2 cisla'); readln(a,b); p:=(a+b)/2; writeln('Prumer = ',p); writeln('Stiskni Enter'); readln; end.

24 Informatika I: přednáška 124 program Project1; uses Forms, Unit1 in 'Unit1.pas' {Form1}; {$R *.RES} begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; end. Struktura programu v prostředí Delphi

25 Informatika I: přednáška 125 unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} end. Předdefinovaná struktura jednotky v Delphi


Stáhnout ppt "Informatika I 1. přednáška RNDr. Jiří Dvořák, CSc."

Podobné prezentace


Reklamy Google