Funkce, podmíněný příkaz if-else, příkaz cyklu for



Podobné dokumenty
Objektově orientované programování v jazyce Python

Objektově orientované programování v jazyce Python

SPJA, cvičení 1. ipython, python, skripty. základy syntaxe: základní datové typy, řetězce. podmínky: if-elif-else, vyhodnocení logických výrazů

DSL manuál. Ing. Jan Hranáč. 27. října V této kapitole je stručný průvodce k tvorbě v systému DrdSim a (v

EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI

Algoritmizace prostorových úloh

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

Algoritmizace a programování

6 Příkazy řízení toku

PSK3-9. Základy skriptování. Hlavička

Řídicí struktury. alg3 1

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

Programovací jazyk Pascal

Algoritmizace prostorových úloh

Činnost: 1) Vyhodnotí se výraz E. 2) Jeho hodnota se uloží do proměnné V.

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

Algoritmy a datové struktury

for (i = 0, j = 5; i < 10; i++) { // tělo cyklu }

8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek

Operační systémy. Cvičení 4: Programování v C pod Unixem

ŘÍDÍCÍ STRUKTURY - PODMÍNKY

Větvení a cykly. Úvod do programování 1 Tomáš Kühr

B3B33ALP - Algoritmy a programování - Zkouška z předmětu B3B33ALP. Marek Boháč bohacm11

Inovace bakalářského studijního oboru Aplikovaná chemie

B3B33ALP - Algoritmy a programování - Zkouška z předmětu B3B33ALP. Marek Boháč bohacm11

PROGRAMOVÁNÍ V SHELLU

Identifikátory označují objekty v programu používané (proměnné, typy, podprogramy).

Pascal. Katedra aplikované kybernetiky. Ing. Miroslav Vavroušek. Verze 7

Sekvenční a podmíněné provádění

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Výčtový typ strana 67

Algoritmizace. 1. Úvod. Algoritmus

Pro kontrolu správného formátu hodnoty N použijeme metodu try-catch.

Úvod do programování - Java. Cvičení č.4

1. Téma 03 - Rozhodování

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false

Programování: základní konstrukce, příklady, aplikace. IB111 Programování a algoritmizace

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15

Martin Flusser. November 1, 2016

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

3. přednáška. Obsah: Řídící struktury sekvence, if-else, switch, for, while, do-while. Zpracování posloupnosti

Začínáme vážně programovat. Řídící struktury Přetypování Vstupně výstupní operace Vlastní tvorba programů

Algoritmy I. Cvičení č. 2, 3 ALGI 2018/19

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Konečný automat. Jan Kybic.

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání

Programování v Pythonu

Jazyk C# a platforma.net

Python profesionálně: dynamické parametry, generátory, lambda funkce... with. Dynamické parametry

Algoritmizace a programování. Ak. rok 2012/2013 vbp 1. ze 44

2. lekce Algoritmus, cyklus Miroslav Jílek

Skripty - úvod. Linux - skripty 2

Booleovská algebra. Pravdivostní tabulka. Karnaughova mapa. Booleovské n-krychle. Základní zákony. Unární a binární funkce. Podmínky.

Jazyk C Program v jazyku C má následující strukturu: konstanty nebo proměnné musí Jednoduché datové typy: Strukturované datové typy Výrazy operátory

Základní pojmy. Úvod do programování. Základní pojmy. Zápis algoritmu. Výraz. Základní pojmy

6. Příkazy a řídící struktury v Javě

Programovani v Maplu Procedura

ANOTACE vytvořených/inovovaných materiálů

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

Programování v jazyce JavaScript

Programování v jazyce C pro chemiky (C2160) 3. Příkaz switch, příkaz cyklu for, operátory ++ a --, pole

Vyučovací hodina. 1vyučovací hodina: 2vyučovací hodiny: Opakování z minulé hodiny. Procvičení nové látky

Přednáška 7. Celočíselná aritmetika. Návratový kód. Příkazy pro větvení výpočtu. Cykly. Předčasné ukončení cyklu.

Z. Kotala, P. Toman: Java ( Obsah )

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Cykly. Základy programování 1 Martin Kauer (Tomáš Kühr)

Obsah přednášky. programovacího jazyka. Motivace. Princip denotační sémantiky Sémantické funkce Výrazy Příkazy Vstup a výstup Kontinuace Program

Vlákna a internetové protokoly

ŘÍKÁME, ŽE FUNKCE JE ČÁSTEČNĚ SPRÁVNÁ (PARTIALLY CORRECT), POKUD KDYŽ JE SPLNĚNA PRECONDITION

Příkaz while. while (podmínka) { příkaz; } Příklad: int i=0; while (i < 10) { System.out.println(i); i++; } // vypíše čísla od 0 do 9

Algoritmizace a programování

Algoritmizace a programování

Da D to t v o é v ty t py IB111: Datové typy

WSH Windows Script Hosting. OSY 2 Přednáška číslo 2 opravená verze z

Vstupní požadavky, doporučení a metodické pokyny

2.1 Podmínka typu case Cykly Cyklus s podmínkou na začátku Cyklus s podmínkou na konci... 5

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Preprocesor a koncepce (větších) programů. Úvod do programování 2 Tomáš Kühr

Algoritmus. Přesné znění definice algoritmu zní: Algoritmus je procedura proveditelná Turingovým strojem.

Funkce - opakování. Funkce může přijímat parametry na vstupu a může vracet parametry na výstupu.

Obsah. Začínáme programovat v Ruby on Rails 9. Úvod Vítejte v Ruby 15. O autorovi 9 Poděkování 9

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh Podmíněný příkaz

Úvod do databázových systémů

PODPROGRAMY PROCEDURY A FUNKCE

Je n O(n 2 )? Je n 2 O(n)? Je 3n 5 +2n Θ(n 5 )? Je n 1000 O(2 n )? Je 2 n O(n 2000 )? Cvičení s kartami aneb jak rychle roste exponenciála.

Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií

Základy algoritmizace a programování

Algoritmus. Algoritmus je posloupnost kroků, které jsou potřeba k vyřešení problému.

Přednáška 4. Regulární výrazy. Filtry grep, sed a awk. Úvod do Operačních Systémů Přednáška 4

Algoritmizace prostorových úloh

Programování: základní konstrukce. IB111 Úvod do programování

Programování v jazyce JavaScript

Řídicí příkazy KAPITOLA 3. Vstup znaků z klávesnice

3. Řízení běhu programu

Pokročilé programování v jazyce C pro chemiky (C3220) Třídy v C++

Programování v Pythonu

Soubor jako posloupnost bytů

Basic256 - úvod do programování Příklady. ing. petr polách

Dotazy tvorba nových polí (vypočítané pole)

Vývojové diagramy - zápis algoritmu

Transkript:

Funkce, podmíněný příkaz if-else, příkaz cyklu for Definice funkce Funkce je pojmenovaná část programu, kterou lze dále zavolat v jiné části programu. V Pythonu je definována klíčovým slovem def. Za tímto klíčovým slovem následuje jméno funkce. Dále funkce může obsahovat seznam formálních parametrů. Následuje tělo funkce, to je blok kódu (příkazů), a proto musí být odsazeno podobně jako tělo cyklu apod.[1]. Níže máme uvedeno zapsání funkce v Pythonu. Zápis: def nazev(parametry): Za dvojtečkou pokračuje tělo funkce. Parametry funkce Funkce může mít v kulatých závorkách seznam parametrů funkce. Parametry funkce není nutno vyplňovat všechny. Záleží na konstrukci a funkce a jaké možnosti nám nabízí. Nejlépe je znázorněno využití parametrů na funkci Range (kapitola 4.3.1). Ukázka definice funkce s parametry: def vypis (jmeno, prijmeni, znamka): print Jméno studenta,jmeno print Prijmeni studenta, prijmeni print Dostal znamku,znamka Konstrukce if Příkaz if se skládá ze záhlaví a těla. Záhlaví začíná klíčovým slovem if, booleovským výrazem a končí dvojtečkou. Počet příkazů v těle příkazu if není omezen, ale musí být alespoň jeden. - 1 -

Neúplná podmínka konstrukce if Booleovskému výrazu za příkazem if se nazývá podmínka. Je-li tato podmínka pravdivá, odsazený výraz se provede. Pokud podmínka není pravdivá, neprovede se nic. Syntaxe je: if booleovský výraz: příkazy Úplná podmínka konstrukce if Úplná podmínka je taková, kde máme 2 možnosti a podmínka určí, která z nich se provede. Syntaxe je: if booleovský výraz: příkazy else: příkazyelse Zřetězené podmínky konstrukce if Pokud potřebujeme více než dvě možnosti, musíme přidat další větve. Pro přidání dalších větví použijeme sériově uspořádané podmínky. Pro přidání další větve slouží příkaz elif. Počet elif není omezen. Pouze příkaz else smí být použit pouze jednou a musí být uveden jako poslední. Syntaxe je: if booleovský výraz1: příkaz1 elif booleovský výraz2: příkaz2 elif booleovský výraz3: příkaz3...... else: - 2 -

příkazelse Konstrukce for Příkaz for iteruje prvky libovolné sekvence. V případě Pythonu, lze iterovat i řetězce včetně seznamů. Popis funkce: Za řídící proměnnou se každým probíhajícím cyklem interpretují všechny prvky sekvence v pořadí, v jakém jsou uloženy. K ukončení cyklu může dojít několika způsoby. a) Jsou vyčerpány všechny prvky b) Vznik neodchycené výjimky c) Příkaz break, který zajistí předčasné ukončení cyklu V průběhu cyklu není dobré měnit řídící sekvenci prvků. Může nastat chyba typu buď: a) K vynechání prvku b) opakování prvku Je-li nutná změna pořadí prvků v seznamu, pak je nezbytně nutné iterovat prvky kopie původního seznamu. [2] Příklad:... retezec = 'Python' >>> for x in retezec:... print x, len(x) Python 6 Funkce Range() Potřebujeme li iterovat prvky podle aritmetické posloupnosti, bude se nám právě hodit interní funkce range(). Kde právě jako parametr funkce dáváme číslo, které chceme rozložit aritmetickou posloupností. Tato funkce nám vrátí seznam prvků. - 3 -

>>> range(5) [0, 1, 2, 3, 4] Pokud bychom chtěli, aby začínala posloupnost od jinud než od 0, vložíme jako druhý parametr číslo, od kterého chceme, aby posloupnost začínala jinde než 0 >>> range(6,11) [6, 7, 8, 9,10] Další velice často používaná varianta použití této funkce je, že si můžeme nastavit po jakých krocích má aritmetická posloupnost přirůstat. Stačí přidat oproti předchozí verzi jeden parametr navíc. >>> range(2,6,11) [ 6, 8, 10] - 4 -

Bibliografie [1] ŠVEC, Jan. Učebnice jazyka Python (aneb Létající cirkus) [online]. 16.prosince.2002 [cit. 2009-12-01]. Dostupný z WWW: <http://www.pythondocs.ic.cz/tut/node6.html#section006700000000000000000>. [2] ŠVEC, Jan. Učebnice jazyka Python (aneb Létající cirkus) [online]. 16.prosince.2002 [cit. 2009-12-01]. Dostupný z WWW: <http://www.pythondocs.ic.cz/tut/node6.html#section006100000000000000000>. PYTHON SOFTWARE FOUNDATION.. More Control Flow Tools [online]. 1.dec.2009 [cit. 2009-12-01]. Dostupný z WWW: <http://docs.python.org/tutorial/controlflow.html>. BÍLEK, Petr. Sally - Python- Funkce [online]. 2005-09-11 [cit. 2009-12-01]. Dostupný z WWW: <http://www.sallyx.org/sally/python/python7.php?app_invia_off=1>. - 5 -

Ověření znalostí z kapitoly 3- Funkce, podmíněný příkaz if-else, příkaz cyklu for 1. Jak se definuje funkce v jazyce python? a) del b) dek c) return d) def 2. Kolik větví může obsahovat program? a) Nekonečně mnoho b) 1 c) 2 d) 2 a více 3. Jaká je základní konstrukce if? a) if else d) if-elif-else c) Pouze if 4. Lze použít funkci Range i ve For cyklu? a) Ne b) Ano c) Ve For cyklu ne, ale ve while cyklu ano 5. Co rozumíme pojmem parametr funkce? a) Nic takového jako parametr funkce neexistuje b) Výčet informací, které musíme funkci dodat c) Informace, pro vznik funkce - 6 -