Informatika I 3. přednáška

Slides:



Advertisements
Podobné prezentace
Gymnázium Vincence Makovského se sportovními třídami Nové Město na Moravě VY_32_INOVACE_INF_RO_17 Digitální učební materiál Sada: Úvod do programování.
Advertisements

Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
ŘÍDÍCÍ STRUKTURY - PODMÍNKY
Programování funkcí v Excelu
Pascal - větvení.
Programování v Pascalu
Algoritmizace od algoritmu k Pascalu.
Vnitřní řazení v poli (in sito)
1 Vnitřní řazení s využitím dynamických struktur Tvorba spojového seznamu je vcelku triviální záležitostí: a)Vytvořím prázdný seznam příkazem LIST:=nil.
Třetí cvičení Podmíněné příkazy Cykly Break a Continue Switch Return
Programování v Pascalu Přednáška 3
Programování v Pascalu Přednáška 5 RNDr. Hana Havelková.
Algoritmizace a programování Operátory a příkazy v Delphi - 07
If-else, do-while, switch, operátory
Programování v Pascalu Přednáška 7
Materiály k přednášce Úvod do programování Ondřej Čepek.
Základy Visual Basicu.
Gymnázium Vincence Makovského se sportovními třídami Nové Město na Moravě VY_32_INOVACE_INF_RO_15 Digitální učební materiál Sada: Úvod do programování.
Algoritmizace a programování Podmíněné a cyklické příkazy- 08
Jazyk vývojových diagramů
Procedury a funkce Základní charakteristika a použití v programu.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Vyučovací hodina 1 vyučovací hodina: Opakování z minulé hodiny 5 min Nová látka 20 min Procvičení nové látky 15 min Shrnutí 5 min 2 vyučovací hodiny: Opakování.
Deklarace Radim Štefan. 2 Použité zkratky BP – Borland Pascal De – Delphi.
Informatika I 2. přednáška
Gymnázium Vincence Makovského se sportovními třídami Nové Město na Moravě VY_32_INOVACE_INF_RO_18 Digitální učební materiál Sada: Úvod do programování.
Podmienený príkaz. Kĺúčové slová  Pro podmínky se v Pascalu používají klíčové příkazy IF, THEN a ELSE.  Také se jim říká „príkaz vetvenia"..  Příkaz.
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ ŘAZENÍ PRVKŮ – PŘÍMOU VÝMĚNOU (BUBBLESORT) Vytvořila: RNDr. Ivanka Dvořáčková Gymnázium K. V. Raise, Hlinsko, Adámkova.
Informatika I 4. přednáška
Cvičení.
3. Příkazy  Příkazy dělíme na jednoduché a strukturované.  Jednoduché příkazy - žádnou jejich dílčí částí neni příkaz - přiřazovací, vstupu a výstupu,
5. Procedury a funkce Procedura je samostatně odladěný algoritmus, v programu může být volána vícekrát. Dvojí terminologie - rozlišujeme procedury a funkce.
Informatika I 7. přednáška RNDr. Jiří Dvořák, CSc.
Informatika I 8. přednáška RNDr. Jiří Dvořák, CSc.
Programovací jazyk PASCAL
2 CYKLUS S PEVNÝM POČTEM OPAKOVÁNÍ Podle řídící proměnné proveď n-krát příkaz P1.
Gymnázium Vincence Makovského se sportovními třídami Nové Město na Moravě VY_32_INOVACE_INF_RO_06 Digitální učební materiál Sada: Úvod do programování.
Informatika I 1. přednáška
Pascal - cykly.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
10. Dynamické proměnné Dynamická proměnná se nezavádí deklarací proměnných, ale vzniká za běhu programu provedením speciálního příkazu. Nemá přidělen žádný.
7. Typ soubor Souborem dat běžně rozumíme uspořádanou množinu dat, uloženou mimo operační paměť počítače (na disku). Pascalský soubor je abstrakcí skutečného.
A1PRG - Programování – Seminář Ing. Michal Řízení běhu programu 5 Verze
Typy cyklů Do...Loop For...Next For Each...Next.
6. Typ záznam Strukturovaný datový typ - znamená spojení několika elementů stejného nebo různých typů do jedné proměnné. Např. pole je strukturovaný datový.
JUI přednáška Vstup a výstup, cykly RNDr. Jiří Dvořák, CSc.
doc. RNDr. Zdeněk Botek, CSc.
Pascal – if Mgr. Lenka Švancarová.
4. Typ pole 4.1 Jednorozměrná pole
Informatika I 2. přednáška
Pascal – strukturované příkazy
ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ
Pascal – cyklus while Mgr. Lenka Švancarová.
Cvičení 2 Podmíněné příkazy, cykly. Podmíněné příkazy Podmínka – jakýkoliv logický výraz ( a=1,……..) ( a=1,……..) Příkaz – vlastní instrukce, která se.
Pascal - větvení.
Cvičení 3-4 Procedury, funkce,řetězce. Procedury Procedura Procedura Procedura je podprogram, který mění stav programu (změnou stavu proměnných nebo změnou.
Algoritmizace a programování Cykly – While 1. Test Příští hodina test na větvení Konstrukce IF..ELSE případně IF..ELIF..ELSE.
M2160 – Úvod do programování II RNDr. Jaroslav PELIKÁN, Ph.D. katedra počítačových systémů a komunikací Fakulta informatiky Masarykovy univerzity Botanická.
Praha & EU: Investujeme do vaší budoucnosti Evropský sociální fond Gymnázium, Praha 10, Voděradská 2 Projekt OBZORY Datové typy a operátory Základní programové.
Inf Cykly ve vývojových diagramech
Definiční obor a obor hodnot
Strukturované typy proměnných v programovacím jazyce Pascal - 1.hodina
Strukturované typy proměnných v programovacím jazyce Pascal - 2.hodina
Příkazy cyklu (1) Umožňují vícekrát (nebo ani jednou) pro-vést určitý příkaz Jazyk C rozlišuje příkaz cyklu: s podmínkou na začátku: obecný tvar: while.
© Copyright Radim Štefan
Opakování základních příkazů a syntaxí v programovacím jazyce Pascal
Opakování ze 3. cvičení deklarace proměnných výpis na monitor (výstup)
DATOVÉ TYPY určuje druh hodnoty (číslo, text, logická hodnota) a množinu operací (aritmetické, logické, ...) skalární datový typ - hodnoty jsou uspořádané.
Cyklus for (1) Obecný tvar: for (výraz1; výraz2; výraz3) příkaz
Transkript prezentace:

Informatika I 3. přednáška RNDr. Jiří Dvořák, CSc. dvorak@uai.fme.vutbr.cz

Informatika I: přednáška 3 Obsah přednášky Datové typy v Pascalu Proměnné a pojmenované konstanty Příkazy v Pascalu Řídicí struktury Složený příkaz Podmíněné příkazy Příkazy cyklu Informatika I: přednáška 3

Datové typy v jazyku Pascal Jednoduché datové typy: real integer v jazyku boolean předdefinované char výčtový typ interval Strukturované datové typy: definované množina uživatelem pole záznam soubor Informatika I: přednáška 3

Jednoduché datové typy v jazyku Pascal Typ real: reálné (přesněji racionální) hodnoty Typ integer: celočíselné hodnoty Typ boolean: logické (booleovské) hodnoty Typ char: znakové hodnoty (characters) Výčtový typ: výčet hodnot reprezentovaných identifikátory Typ interval: podmnožina hodnot nějakého ordinálního typu Množiny hodnot všech jednoduchých (skalárních) datových typů v Pascalu jsou uspořádané a jsou pro ně definovány relační operace. Ordinální je takový typ, jehož hodnoty jsou navíc očíslovány pořadovými (celými) čísly. Ordinální jsou všechny výše uvedené typy s výjimkou typu real. Informatika I: přednáška 3

Společné operace pro skalární typy operátor = <> < <= > >= význam rovno nerovno menší menší nebo rovno větší větší nebo rovno Pozn.: Jedná se o relační operace. Výsledkem jsou hodnoty typu boolean. Informatika I: přednáška 3

Společné funkce pro ordinální typy Funkce význam ord pořadové číslo hodnoty argumentu v uspořádané množině hodnot daného typu; pořadové číslo celočíselné hodnoty je rovno této hodnotě, u ostatních ordinálních typů začíná číslování hodnot od nuly pred předchůdce hodnoty argumentu v uspořádané množině hodnot daného typu succ následník hodnoty argumentu v uspořádané množině hodnot daného typu Informatika I: přednáška 3

Proměnné a pojmenované konstanty Definice konstant: const identifikátor1=hodnota1; identifikátor2=hodnota2; . Deklarace proměnných var identif1:typ1; identif2a,identif2b, … :typ2; Informatika I: přednáška 3

Příklady definic konstant a deklarací proměnných const PI=3.14159; Imax=100; Pozdrav=’Ahoj’; var i,j,m,n:integer; x,y:real; B:boolean; Zn1,Zn2:char; Informatika I: přednáška 3

Informatika I: přednáška 3 Příkazy jazyka Pascal Jednoduché příkazy: přiřazovací příkaz příkaz procedury příkaz skoku prázdný příkaz Strukturované příkazy (řídicí struktury): složený příkaz podmíněné příkazy příkazy cyklu příkaz with (používá se u datového typu záznam) Informatika I: přednáška 3

Informatika I: přednáška 3 Řídicí struktury Struktura begin - end uzavření posloupnosti příkazů do příkazových závorek Struktura if - then větvení do dvou větví Struktury while - do, repeat - until cykly umožňující řešit i případy s předem neznámým počtem opakování Struktura case větvení do více než dvou větví Struktura for cyklus s předem známým počtem opakování Informatika I: přednáška 3

Informatika I: přednáška 3 Složený příkaz begin posloupnost příkazů oddělených středníky end Složený příkaz používáme tam, kde syntaxe požaduje výskyt pouze jediného příkazu. Informatika I: přednáška 3

Příklady složeného příkazu begin Pom:=X; X:=Y; Y:=Pom end b) begin S:=S+ii; i:=i+1; end Podle syntaxe jazyka Pascal je středník oddělovačem příkazů. Avšak v případě b) se středník vyskytuje i za posledním příkazem. To ale není chyba, neboť v tomto složeném příkazu se vlastně nacházejí tři příkazy oddělené středníky, přičemž třetím příkazem je příkaz prázdný. Informatika I: přednáška 3

Informatika I: přednáška 3 Příkazy if a) if podmínka then příkaz1 else příkaz2 Je-li podmínka splněna, provede se příkaz1, jinak se provede příkaz2. b) if podmínka then příkaz Je-li podmínka splněna, provede se příkaz. V opačném případě se neprovede nic. Případné nejednoznačnosti v konstrukcích tvořených několika příkazy if vnořenými do sebe jsou řešeny tak, že každé else přísluší nejbližšímu předcházejícímu then, které je dosud volné a není uvnitř jiné struktury. Informatika I: přednáška 3

Sémantika konstrukcí s více příkazy if a) if B1 then if B2 then P1 else P2; b) if B1 then begin if B2 then P1 end else P2; ad a) ad b) ano ne ano ne B1 B1 ano ne ano ne P2 B2 B2 P1 P1 P2 Informatika I: přednáška 3

Informatika I: přednáška 3 Příklady příkazů if Určení minimální hodnoty z čísel X, Y, Z: if X<Y then Min:=X else Min:=Y; if Z<Min then Min:=Z; Uspořádání čísel A a B vzestupně podle velikosti: if A>B then begin Pom:=A; A:=B; B:=Pom end; Informatika I: přednáška 3

Informatika I: přednáška 3 Příkazy while a repeat a) while podmínka do příkaz Příkaz za do se provádí, pokud je splněna podmínka. Jestliže podmínka není splněna, cyklus končí. b) repeat posloupnost příkazů oddělených středníky until podmínka Provádějí se příkazy mezi repeat a until, dokud není splněna podmínka. Jakmile je podmínka splněna, cyklus končí. Informatika I: přednáška 3

Příklady použití cyklů while a repeat Sečítání kladných čísel, zadávaných z klávesnice (výpočet je ukončen zadáním záporného čísla nebo nuly): program Secitani; var x,s:real; begin s:=0; read(x); while x>0 do s:=s+x; end; writeln(’Soucet= ’,s); end. program Secitani; var x,s:real; begin s:=0; read(x); if x>0 then repeat s:=s+x; until x<=0; writeln(’Soucet= ’,s); end. Informatika I: přednáška 3

Příklady použití cyklu while Výpočet faktoriálu přirozeného čísla N: var i,N:integer; F:real; ... F:=1; i:=2; while i<=N do begin F:=Fi; i:=i+1; end; {Vysledek je v F} var i,N:integer; F:real; ... F:=1; i:=N; while i>=2 do begin F:=Fi; i:=i–1; end; {Vysledek je v F} Informatika I: přednáška 3

Příklad použití cyklu repeat Přibližný výpočet třetí odmocniny z A: program TretiOdmocnina; {$APPTYPE CONSOLE} var A,Epsilon,X,Y:real; begin writeln('Zadej cislo pro odmocninu'); readln(A); writeln('Zadej presnost vypoctu'); readln(Epsilon); Y:=A; repeat X:=Y; Y:=X+(A/sqr(X)-X)/3; until abs(X-Y)<Epsilon; writeln('Treti odmocnina z',A,'=',Y); writeln('Stiskni Enter'); readln; end. Informatika I: přednáška 3

Informatika I: přednáška 3 Příkazy case a) case SelektorVětvení of hodnota1:příkaz1; hodn2a,hodn2b, … :příkaz2; . end b) case SelektorVětvení of else příkazy Selektor větvení je výraz ordinálního typu. Provede se příkaz, který odpovídá hodnotě selektoru větvení. Pokud žádný takový není, provedou se v případě b) příkazy ve větvi else. Informatika I: přednáška 3

Příklad použití příkazu case Součást vyhodnocení aritmetického výrazu: var Oper:char; Vysledek,X,Y:real; ... case Oper of ’+’: Vysledek:=X+Y; ’–’: Vysledek:=X–Y; ’’: Vysledek:=XY; ’/’: Vysledek:=X/Y; end; Informatika I: přednáška 3

Příklad použití příkazu case Určení počtu dní v měsíci: var Mesic:1..12; {interval celych cisel od 1 do 12} PocetDnu,Rok:integer; function Prestupny(R:integer):boolean; {Funkce testujici, zda rok R je prestupny} ... case Mesic of 2: if Prestupny(Rok) then PocetDnu:=29 else PocetDnu:=28; 4,6,9,11: PocetDnu:=30 else PocetDnu:=31 end Informatika I: přednáška 3

Informatika I: přednáška 3 Příkazy for a) for řídicí_proměnná:=výraz1 to výraz2 do příkaz b) for řídicí_proměnná:=výraz1 downto výraz2 do Řídicí proměnná je ordinálního typu. Výraz1 a výraz2 určují počáteční a koncovou hodnotu řídicí proměnné. Tyto výrazy se vyhodnocují pouze jednou před zahájením cyklu. Příkaz, který je uvnitř cyklu, nesmí měnit hodnotu řídicí proměnné. Ta se mění automaticky (v cyklu for-to pomocí funkce succ, v cyklu for-downto pomocí funkce pred). Příkaz for je implementován jako cyklus while. Informatika I: přednáška 3

Implementace cyklu for pomocí while for I:=výraz1 to výraz2 do příkaz Implementace: V1:=výraz1; V2:=výraz2; I:=V1; while I<=V2 do begin příkaz; I:=succ(I) end Implementace cyklu for-downto se liší podmínkou I>=V2 a příkazem I:=pred(I). Informatika I: přednáška 3

Příklady použití cyklu for Výpočet faktoriálu přirozeného čísla N: var i,N:integer; F:real; ... F:=1; for i:=2 to N do F:=Fi; {Vysledek je v F} var i,N:integer; F:real; ... F:=1; for i:=N downto 2 do F:=Fi; {Vysledek je v F} Informatika I: přednáška 3