Lekce 04 Řídící struktury



Podobné dokumenty
Lekce 01 Úvod do algoritmizace

Lekce 03 Prostředí programu SCRATCH

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

VISUAL BASIC. Přehled témat

Algoritmizace prostorových úloh

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

Algoritmizace a programování

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Název předmětu: Školní rok: Forma studia: Studijní obory: Ročník: Semestr: Typ předmětu: Rozsah a zakončení předmětu:

6 Příkazy řízení toku

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

Paralelní programování

Algoritmizace. 1. Úvod. Algoritmus

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

Algoritmizace, základy programování, VY_32_INOVACE_PRG_ALGO_01

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

2. lekce Algoritmus, cyklus Miroslav Jílek

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Algoritmizace prostorových úloh

Řídicí struktury. alg3 1

Základy algoritmizace

Výukový materiál zpracován v rámci projektu EU peníze školám

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

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

Algoritmizace. Obrázek 1: Přeložení programu překladačem

Úvod do programování. Lekce 3

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

ŠVP Gymnázium Ostrava-Zábřeh Úvod do programování

Vlastnosti algoritmu. elementárnost. determinovanost. rezultativnost. konečnost. hromadnost. efektivnost

CO JE STAVOVÝ AUTOMAT

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

Makro. PDF vytvořeno zkušební verzí pdffactory Pro

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

3 Co je algoritmus? Trocha historie Definice algoritmu Vlastnosti algoritmu... 3

Algoritmy a datové struktury

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

4a. Makra Visual Basic pro Microsoft Excel Cyklické odkazy a iterace Makra funkce a metody

cyklus s daným počtem opakování cyklus s podmínkou na začátku (cyklus bez udání počtu opakování)

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

Algoritmizace prostorových úloh

Platforma.NET 11.NET Framework 11 Visual Basic.NET Základní principy a syntaxe 13

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

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

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

Excel - databáze. Opakování. Soubor, který jsme upravovali. Upravený soubor. Hrubá mzda = počet kusů * Kč za kus B6=B4*B5

10 Algoritmizace Příklad 2 Word 2007/ VBA

Algoritmus. Cílem kapitoly je seznámit žáky se základy algoritmu, s jeho tvorbou a způsoby zápisu.

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

Algoritmizace řazení Bubble Sort

Základní principy konstrukce systémové sběrnice - shrnutí. Shrnout základní principy konstrukce a fungování systémových sběrnic.

V každém kroku se a + b zmenší o min(a, b), tedy vždy alespoň o 1. Jestliže jsme na začátku dostali 2

Diagramy stavů. Michale Blaha, James Rumbaugh: Object-Oriented Modeling and Design with UML, Second Edition, Pearson Prentice Hall, 2005

Tematická oblast: Programování 2 (VY_32_INOVACE_08_2_PR) Anotace: Využití ve výuce: Použité zdroje:

PROGRAMOVÁNÍ V SHELLU

Název: Řízení pohybu robota ultrazvukovým a tlakovým senzorem I.

RUČNÍ PROGRAMOVÁNÍ FRÉZOVÁNÍ UOV Petr Svoboda

Paralelní programování

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

Kritéria hodnocení praktické maturitní zkoušky z databázových systémů

Základy algoritmizace a programování

MATURITNÍ ZKOUŠKA ve školním roce 2014/2015

Poslední nenulová číslice faktoriálu

5a. Makra Visual Basic pro Microsoft Escel. Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina

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

Lekce 3 Vizuální programování

Podklad pro tvorbu ilayer typu

ALGORITMIZACE Příklady ze života, větvení, cykly

LabView jako programovací jazyk II

Základy logického řízení

Obsah. KAPITOLA 1 Ahoj, kocoure 27 Co se naučíte 28 Prostředí App Inventor 28 Design komponent 29

Základní datové typy, proměnné - deklarujeme předem - C je case sensitive rozlišuje malá a velká písmena v názvech proměnných a funkcí

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

Programujeme v softwaru Statistica

NPRG030 Programování I RNDr.Tomáš Holan, Ph.D. 4.patro, č

Martin Hejtmánek hejtmmar

DUM 06 téma: Tvorba makra pomocí VBA

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

5. STRUKTURA PLC PROGRAMU

Vývojové diagramy 1/7

Základy algoritmizace a programování

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

Činnost počítače po zapnutí

Algoritmy. BI-PA1 Programování a Algoritmizace I. Ladislav Vagner

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

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

Micro:bit lekce 4. Cyklus s určeným počtem opakování cyklus Repeat. Cyklus s počtem opakování daným řídicí proměnnou cyklus For from to

Násobení pomocí sčítání

Procesy a vlákna (Processes and Threads)

Řízení asynchronních motorů

Simulace číslicových obvodů (MI-SIM) zimní semestr 2010/2011

Úvodem... 9 Kapitola 1 Karetních

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

Příklad: Součet náhodných čísel ve vektoru s počtem prvků, které zadá uživatel, pomocí sum() a pomocí cyklu for. Ověříme, že příliš výpisů na

NOVINKY v PROGRAMU DOCHÁZKA ADS

DUM 20 téma: Test dávky

ŘÍDÍCÍ STRUKTURY - PODMÍNKY

MATURITNÍ ZKOUŠKA ve školním roce 2016/2017

Komplexní čísla, Kombinatorika, pravděpodobnost a statistika, Posloupnosti a řady

PODOBÁ SE JAZYKU C S NĚKTERÝMI OMEZENÍMI GLOBÁLNÍ PROMĚNNÉ. NSWI162: Sémantika programů 2

Modelování procesů (1) Procesní řízení 1

Transkript:

Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů Lekce 04 Řídící struktury Tento projekt CZ.1.07/1.3.12/04.0006 je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky.

Vysvětlit funkci jednotlivých řídících struktur Ukázat paralelu mezi jednotlivými strukturami vývojových diagramů a programu Scratch Tvorba jednoduchých typových příkladů CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 2

Karta Bloky pro Zahájení a ukončení skriptu Větvení (rozhodovací bloky) Opakování (iterace) Zasílání zpráv (synchronní nebo asynchronní komunikace, paralelní programování) Čekání CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 3

Bloky odpovídají značce zahájení činnosti ve VD Start Standardní spuštění skriptu uživatelem kliknutím na praporek nad scénou Reakce na události (událostmi řízené programování, paralelní programování) Myši (kliknutí na sprite) Obdržení zprávy Stisku definované klávesy CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 4

Bloky odpovídají značce zahájení činnosti ve VD Start Zastavení aktuálního skriptu (nutno použít při zaslání zprávy a čekání na výsledek) Zastavení všech skriptů, ukončení činnosti programu Konec CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 5

Rozhodování na základě splnění (nesplnění podmínky) Podmínka se vkládá na příslušné místo v bloku Podmínka - + Příkaz 1 Neúplné Úplné - + Podmínka Příkaz 2 Příkaz 1 CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 6

Některé bloky jsou odlišné od běžných programovacích jazyků, případně zvyklostí strukturovaných vývojových diagramů Nekonečný cyklus (uvnitř cyklu je možné nestrukturované ukončení běhu aktuálního skriptu nebo všech skriptů) Cyklus neumožňuje pokračování po skončení cyklu (připojení další operace za cyklus) CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 7

Cyklus se známým počtem opakování Variace na cyklus FOR Není přístup k řídící proměnné cyklu (např. pro zjištění, kolikátá iterace probíhá) Lze řešit vlastní dodatečnou proměnnou (počítadlem, potom tento přístup ztrácí smysl, viz dále, lze nahradit cyklem s podmínkou) CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 8

Klasická obdoba cyklu s podmínkou na začátku ( WHILE ) Cyklus neumožňuje pokračování po skončení cyklu (připojení další operace za cyklus) Kontrola podmínky pokud platí, vykonají se příkazy v těle cyklu a opětovně se kontroluje podmínka pokud neplatí, cyklus se ukončí 2x průchod cyklem Tělo cyklu se nevykoná ani jednou CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 9

Jediný plnohodnotný cyklus Cyklus WHILE s opačnou podmínkou na začátku Kontrola podmínky pokud neplatí, vykonají se příkazy v těle cyklu a opětovně se kontroluje podmínka pokud platí, cyklus se ukončí! Neexistuje cyklus s podmínkou na konci Jinak zapsané totožné podmínky 2x průchod cyklem CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 10

Synchronní komunikace, blokuje paralelní běh Nutné korektní ukončení volaného scénáře ZPRÁVA ODPOVĚĎ CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 11

Asynchronní komunikace, vytváří paralelní běh Nutní nutnost ukončení volaného scénáře ZPRÁVA CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 12

Časování příběhů Jedna z možností synchronizace několika skriptů Čekací smyčka s podmínkou Podmínka + - CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 13

Animovaný příběh (posloupnost) Výpočty bez větvení Minimum ze zadaných čísel Faktoriál (různé přístupy k problému) Kombinační číslo Kvadratická rovnice Největší společný dělitel CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 14

CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 15

CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 16

CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 17

CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 18

CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 19

CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 20

CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 21

CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 22

Úprava kostýmu pozadí viz příští lekce CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 23

Tento příklad demonstruje náhradu neexistující možnosti vytvoření funkce (metody) formou zasílání zpráv (synchronní komunikace) s využitím sdílení proměnných CZ.1.07/1.3.12/04.0006 VPSS_L04 (verze 01.1/2012) - Řídící struktury 24