ALGO – Algoritmizace 2. cvičení

Slides:



Advertisements
Podobné prezentace
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Advertisements

ŘÍDÍCÍ STRUKTURY - PODMÍNKY
Programování funkcí v Excelu (pole)
Algoritmizace od algoritmu k Pascalu.
Třetí cvičení Podmíněné příkazy Cykly Break a Continue Switch Return
ALGO – Algoritmizace 6. cvičení
1/12 ALGO – Algoritmizace 5. cvičení 1.ročník, ZS Ing. Zdena DOBEŠOVÁ, Ph.D.
ALGO – Algoritmizace 7. cvičení 1.ročník, ZS Ing. Zdena DOBEŠOVÁ, Ph.D.
ALGO – Algoritmizace 1. cvičení
PHP Cyklické příkazy v PHP - 08
Algoritmy I Cvičení č. 3.
Algoritmizace 9. Ročník.
Základy Visual Basicu.
Vývojové diagramy a základy algoritmizace
Algoritmizace a programování Podmíněné a cyklické příkazy- 08
Informatika I 3. přednáška
ALGO – Algoritmizace 9. cvičení 1.ročník, ZS Ing. Zdena DOBEŠOVÁ, Ph.D.
Algoritmizace.
Informatika I 2. přednáška
Jazyk vývojových diagramů
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.
CYKLUS S PEVNÝM POČTEM OPAKOVÁNÍ Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Pavlína Mihačová. Obchodní akademie a Střední odborná.
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.
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost 1. KŠPA Kladno, s. r. o., Holandská 2531, Kladno,
2 CYKLUS S PEVNÝM POČTEM OPAKOVÁNÍ Podle řídící proměnné proveď n-krát příkaz P1.
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost 1. KŠPA Kladno, s. r. o., Holandská 2531, Kladno,
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost 1. KŠPA Kladno, s. r. o., Holandská 2531, Kladno,
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost 1. KŠPA Kladno, s. r. o., Holandská 2531, Kladno,
Pascal - cykly.
Algoritmizace a programování Vývojové diagramy - 03
C – cyklus while Mgr. Lenka Švancarová.
Gymnázium Vincence Makovského se sportovními třídami Nové Město na Moravě VY_32_INOVACE_INF_RO_20 Digitální učební materiál Sada: Úvod do programování.
ALGO – Algoritmizace 4. cvičení 1.ročník, ZS Ing. Zdena DOBEŠOVÁ, Ph.D.
Typy cyklů Do...Loop For...Next For Each...Next.
PROGRAMOVÁNÍ V PHP PERSONAL HOME PAGES CYKLY V PHP.
Tento Digitální učební materiál vznikl díky finanční podpoře EU- OP Vzdělávání pro konkurenceschopnost. Není –li uvedeno jinak, je tento materiál zpracován.
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost 1. KŠPA Kladno, s. r. o., Holandská 2531, Kladno,
doc. RNDr. Zdeněk Botek, CSc.
PŘÍKAZ CYKLU S PODMÍNKOU NA ZAČÁTKU
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B5 Autor Ing. Jiří Kalousek Období vytvoření listopad.
Příkazy cyklů. Co je to cyklus Jako cyklus označujeme opakované vykonávání určitého bloku příkazů Jako cyklus označujeme opakované vykonávání určitého.
ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ
C – cyklus do-while Mgr. Lenka Švancarová.
ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ
Pascal – cyklus while Mgr. Lenka Švancarová.
ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ PROCEDURY BEZ PARAMETRŮ – EUKLEIDŮV ALGORITMUS Vytvořila: RNDr. Ivanka Dvořáčková Gymnázium K. V. Raise, Hlinsko,
ALGO – Algoritmizace 7. cvičení – ročník, ZS Ing. Zdena DOBEŠOVÁ, Ph.D.
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.
Úvod do programování Vyučující: Mgr. Vítězslav Jersák
Algoritmizace a programování Algoritmy 4 – Vývojové diagramy (cykly)
Algoritmizace a programování Cykly - For. FOR Předem známe počet opakování Předem známe počet opakování Syntaxe: Syntaxe: for proměnná in range(rozpětí):
Algoritmizace a programování Cykly – While 1. Test Příští hodina test na větvení Konstrukce IF..ELSE případně IF..ELIF..ELSE.
VY_32_INOVACE_PR2_14. Cyklus umožňuje opakování určité posloupnosti příkazů bez nutnosti psát je stále znovu. Používáme tři základní druhy cyklů: cyklus.
Programovací jazyk C# 4. část - cykly.
Inf Cykly ve vývojových diagramech
Výukový materiál zpracován v rámci projektu
Vytváření dokumentace algoritmů
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
Výukový materiál zpracován v rámci projektu
Programujeme lépe a radostněji
Opakování základních příkazů a syntaxí v programovacím jazyce Pascal
Výukový materiál zpracován v rámci projektu
CYKLUS S PODMÍNKOU NA ZAČÁTKU (se vstupní podmínkou)
Podprogramy.
Algoritmizace a datové struktury (14ASD)
Cyklus for (1) Obecný tvar: for (výraz1; výraz2; výraz3) příkaz
Opakování ze 4. cvičení int a; printf("Zadej číslo: ");
VY_32_INOVACE_58_M-ČÍSLA – NÁSOBENÍ A DĚLENÍ V OBORU NÁSOBILKY
Algoritmizace a datové struktury (14ASD)
Transkript prezentace:

ALGO – Algoritmizace 2. cvičení ročník, ZS Ing. Zdena DOBEŠOVÁ, Ph.D.

Řídicí struktura - cyklus důvod – opakování stejných příkazů slovně : „Pokud platí B opakuj P.“ , kde B je podmínka P je skupina příkazů – tzv. tělo cyklu známý počet opakování x neznámý počet opakování rozlišujeme několik typů cyklů

1. Cyklus While do předem neznámý počet průchodů cyklus končí při nesplnění podmínky nemusí se provést ani jednou, končí hned při nesplnění podmínky

Příklad 2.1 Sestavte algoritmus pro výpočet zbytku po dělení dvou přirozených čísel. Vstup: X (dělenec), Y (dělitel) (přirozená čísla) Výstup: Q – zbytek po dělení Řešení: Dělení nahradíme opakovaným odečítáním podle vztahu: X – Y – Y – Y - … - Y =Q, kde Q < Y Odečítej tak dlouho, dokud zbytek je větší než Y. Q = X Q = Q -Y

Příklad 2.1 ČTI X,Y Q = X WHILE Q >= Y DO Q = Q - Y END WHILE TISK Q TRASOVACÍ TABULKA X = 3, Y= 4 X = 5, Y= 5 X = 21, Y = 4 fáze X Y Q načtení 13 5 ? přiřazení 1. průchod 8 2. průchod 3 tisk

Příklad 2.2 Modifikace příkladu 2.1 Jaký je podíl Z? X / Y = Z a zbytek Q Jak změnit algoritmus předchozí úlohy? Řešení: přidání proměnné Z Z je počítadlo průchodů Z = 0 Z = Z+1 Je možné zaměnit pořadí příkazů uvnitř cyklu?

Příklad 2.2 ČTI X,Y Q = X Z = 0 WHILE Q >= Y DO Q = Q – Y Z = Z +1 END WHILE TISK Z, Q Napište si trasovací tabulku pro 25, 8. X=3, Y=3 TRASOVACÍ TABULKA X Y Q Z NAČTENÍ 13 5 ? PŘIŘAZENÍ 1. PRŮCHOD 8 1 2. PRŮCHOD 3 2 TISK

2. Cyklus – Repeat Until „opakuj B dokud platí P“ While Do „opakuj B dokud platí P“ předem neznámý počet průchodů cyklus končí při nesplnění podmínky provede se aspoň jednou REPEAT B UNTIL P

Konečnost cyklu chyba při spuštění zacyklení – neustálé opakování stejných akcí není projev navenek, obtížná identifikace příklad While I <> 0 Do J = I -1 End While Tělo cyklu nemá vliv na hodnotu I !!!! Příkazy v těle cyklu musí měnit hodnotu proměnné, které je v podmínce.

Konečnost cyklu REPEAT Je tam příkaz, který mění I, ale.. I = I +1 I < N – je funkční (neprojde ani jednou) I >N - zacyklí se Počáteční hodnoty proměnných mají vliv na počet průchodů, zda se vykoná cyklus. Musí se měnit hodnota testované proměnné v těle. Změna musí být vést k ukončení cyklu REPEAT I = I +1 P = K * 27,3 UNTIL I > N

Příklad – 2.3 - Faktoriál Sestavte algoritmus pro výpočet faktoriálu. Použijte cyklus While Do. Vstup: N Výstup: F, (kde F = N!) Řešení: N! = N * (N - 1) * (N - 2) * …* (N-I) * … * 1 N! = 1 * 2 * 3 * …* (N-I) * …* (N - 1) * N

Příklad – 2.3 – Faktoriál Řešení A Řešení B ČTI N F = N I = 1 WHILE I < N DO F=F*(N–I) I=I+1 END WHILE TISK F ČTI N F = 1 I = 2 WHILE I =< N DO F=F*I I=I+1 END WHILE TISK F Zapisujte trasovací tabulku pro N=1, 2, 3. N! = N * (N - 1) * (N - 2) * …* (N-I) * … * 1 N! = 1 * 2 * 3 * …* (N-I) * …* (N - 1) * N

Příklad – 2.3 a – Faktoriál Řešení A Přepište řešení na cyklus REPEAT UNTIL. Lze to? Řešení A ČTI N F = 1 I = 0 REPEAT F=F*(N–I) I=I+1 UNTIL I < N TISK F ČTI N F = N I = 1 WHILE I < N DO F=F*(N–I) I=I+1 END WHILE TISK F Zapisujte trasovací tabulku pro N=1, 2, 3. N! = N * (N - 1) * (N - 2) * …* (N-I) * … * 1

Příklad – 2.3 B – Faktoriál Přepište řešení na cyklus REPEAT UNTIL. Lze to? Řešení B ČTI N F = 1 I = 2 WHILE I =< N DO F=F*I I=I+1 END WHILE TISK F N! = 1 * 2 * 3 * …* (N-I) * …* (N - 1) * N