C – strukturované příkazy

Slides:



Advertisements
Podobné prezentace
ŘÍDÍCÍ STRUKTURY - PODMÍNKY
Advertisements

Pascal - příklady.
Pascal - větvení.
ALGO – Algoritmizace 1. cvičení
Algoritmy I Cvičení č. 5.
Algoritmy I Cvičení č. 2. Cíl hodiny Datové typy a přetypování (int, float, double, bool, char, long, short) Konstanty – Celočíselné Desítkové – 15, 0,
PHP Podmíněné příkazy v PHP - 06
Cvičení 2 Proměnné(jednoduché a složené) a konstanty První program Zápis výrazů.
If-else, do-while, switch, operátory
Algoritmy I Cvičení č. 3.
Větvení cykly J a v a Začínáme programovat Lucie Žoltá.
Algoritmizace a programování Podmíněné a cyklické příkazy- 08
Informatika I 3. přednáška
PHP – zasílání dat z formuláře
VĚTVENÍ (rozhodování). VĚTVENÍ – V PRAXI rozhodnutí při výběru školy výběr směru při cestě autem (na kole), výběr oběda za co utratit kapesné.
Informatika I 2. přednáška
A1PRG - Programování – Seminář Ing. Michal Operátory (2. část) 4 Verze
JavaScript Podmínky, cykly a pole.
Cvičení.
Příklady v jazyku C – část 4
Příklady v jazyku C – část 3
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,
ZADÁNÍ Sestavte program, který vypočítá obvod a obsah čtverce o straně a. Zajistěte, aby výpočet byl realizován pouze v případě, kdy strana a bude mít.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Znaky dělitelnosti pěti, deseti a dvěma Mgr. Ladislava Paterová.
C – cyklus while Mgr. Lenka Švancarová.
Napište program v C pro výpočet plochy obdélníka se stranami A=3 a B=2. Výsledek vytiskněte s patřičným komentářem na obrazovku formátovým příkazem printf.
NEÚPLNÁ PODMÍNKA V JAVĚ. VÝVOJOVÝ DIAGRAM +- Podmínka Příkaz_1.
C – switch Mgr. Lenka Švancarová. switch syntaxe switch (výraz) { case hodnota_1: příkaz(y)_ve_větvi_1; case hodnota_2: příkaz(y)_ve_větvi_2; … default:
doc. RNDr. Zdeněk Botek, CSc.
A1PRG - Programování – Seminář Ing. Michal Řízení běhu programu 5 Verze
POSLOUPNOST úkol 1_41. ZADÁNÍ Sestavte program, který doplní tabulku nepřímé úměrnosti pro hodnoty proměnné x = 1, …, n. Nepřímá úměrnost je zadána uživatelem.
2 PODMÍNĚNÝ PŘÍKAZ VĚTVENÍ if podmínka příkazy end Příklad 1 - chtěli bychom vypsat gratulaci jen v tom případě, kdy žák bude mít jedničku. Vyzkoušíme.
polynom proměnné x f = anxn + an-1xn-1 + ……. + a0
C – jak na procedury Mgr. Lenka Švancarová. C – procedury #include int main() { printf("Ahoj\n"); return(0); } #include void pozdrav(void) { printf("Ahoj\n");
Příklady v jazyku C – část 1. Výstupy pomocí printf. printf(" Tisk textu \n v apostrofech \n ") ; p=10; printf("%d\n", p) ; /* tisk konstanty */ printf("Tisk.
Příklady v jazyku C – část 8. Napište program, který inicializuje 2-rozměrné pole uživatele (5 řádků, 2 sloupce) a naplní ho hodnotami (první sloupec.
Soubory BI-PA1 Programování a algoritmizace 1, ZS Katedra teoretické informatiky © Miroslav Balík Fakulta informačních technologií České vysoké.
Pascal – if Mgr. Lenka Švancarová.
Příklady v jazyku C – část 2
Pascal – strukturované příkazy
C – procedury Mgr. Lenka Švancarová.
C – if Mgr. Lenka Švancarová. if vývojový diagram Podmínka Příkaz(y) Podmínka Příkaz(y) Úplné větveníNeúplné větvení ++--
C – cyklus do-while Mgr. Lenka Švancarová.
ÚPLNÁ PODMÍNKA V JAVĚ úkol 1_29.
Pascal – cyklus while Mgr. Lenka Švancarová.
Pascal - větvení.
Funkce Přednáška č. 5. Funkce (functions)  posloupnost příkazů uvedená hlavičkou  využití – opakovaně volaná sekvence – strukturování programu – ošetření.
Algoritmizace a programování Algoritmy 4 – Vývojové diagramy (cykly)
Algoritmizace a programování Algoritmy 2 – Vývojové diagramy (sekvence)
Programování KONSTANTY, ČTENÍ PO JEDNOM ZNAKU GETCHAR() FORMÁTOVANÝ VÝSTUP POMOCÍ PRINTF, VÝVOJOVÉ DIAGRAMY, CYKLY.
Algoritmizace a programování Cykly – While 1. Test Příští hodina test na větvení Konstrukce IF..ELSE případně IF..ELIF..ELSE.
Algoritmizace a programování Příkaz IF 2 – Příklady.
Inf Cykly ve vývojových diagramech
Algoritmizace a programování
Definiční obor a obor hodnot
C# konzole – Podíl dvou čísel, podmínka IF
ZAL – 3. cvičení 2016.
Programovací jazyk C Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Jitka Vlčková. Dostupné z Metodického portálu ISSN.
Vytváření dokumentace algoritmů
Kurz algoritmizace a programování v jazyce C
Výukový materiál zpracován v rámci projektu
Úlohy pro 1. ročník SPŠ ST Panská
Úlohy pro 1. ročník SPŠ ST Panská
Programujeme lépe a radostněji
Algoritmizace a programování
Opakování ze 3. cvičení deklarace proměnných výpis na monitor (výstup)
NÁZEV ŠKOLY: S0Š Net Office, spol. s r.o., Orlová-Lutyně
Opakování ze 4. cvičení int a; printf("Zadej číslo: ");
NÁSOBENÍ A DĚLENÍ CELÝCH ČÍSEL
Transkript prezentace:

C – strukturované příkazy Mgr. Lenka Švancarová

Úvod do problematiky U předchozích programů jsme vždy vykonávali všechny příkazy jeden po druhém. Pokud budeme chtít, aby se některé příkazy vykonaly jen za určité podmínky a nebo se opakovaly jen za určité podmínky, budeme muset v programech využít strukturovaných příkazy. Strukturované příkazy řídí chod programu na základě toho, zda je podmínka v nich obsažená splněna (vrací nenulovou hodnotu) či nikoliv (vrací nulu).

Podmínka Pascal C a=5 not(p=’V’) nelze (p=’V’) or (p =’v’) (j=’Jan’) and not(a=0) (a mod 2)=0 //mod //vrací zbytek po dělení (a==5) (!(p==’V’)) (p!=’V’) (a==p) //různé typy dat ((p==’V’) || (p ==’v’)) ((j==’Jan’) && (a!=0)) (a%2==0) (p=’V’) //co se stane? Podmínka v C musí být uzávorkovaná. V C lze porovnávat i hodnoty proměnných různých datových typů (v Pascalu ne).

C – větvení Mgr. Lenka Švancarová

Úplné větvení Sémantika (stejná jak v TP) Vývojový diagram Jestliže je splněna podmínka (vrací nenulovou hodnotu), vykonají se příkazy pravdivé větve, když není (vrací nulu), vykonají se příkazy nepravdivé větve. Vždy se tedy vykonají příkazy jen v jedné větvi a pokračuje se dál v programu. Podmínka + - Příkaz(y) Příkaz(y)

if syntaxe if (podmínka) { jeden nebo více příkazů pravdivé větve } else { jeden nebo více příkazů nepravdivé větve } Nepoužijeme-li v pravdivé větvi {}, musíme (jeden) neuzávorkovaný příkaz ukončit středníkem (na rozdíl od TP, kde před else středník psát nelze). Pokud je v pravdivé či nepravdivé větvi jeden příkaz, je na nás, zda použijeme { } či nikoliv. V případě více příkazů jsou { } povinné.

C – úplné větvení Nakresli vývojový diagram a napiš zdrojový kód. Řeš s využitím úplného větvení. Uživatel zadá číslo. Vypočte se jeho absolutní hodnota a výsledek se vypíše na obrazovku. |7|=7 obecně |x|=x pokud je x kladné |-8|=8 obecně |x|=-x pokud je x záporné

printf(”|x|=%.0f\n”, x*(-1)) if úplné větvení Start scanf(”%f”,&x) (x < 0) + - printf(”|x|=%.0f\n”, x*(-1)) printf(”|x|=%.0f\n”, x) Stop

if neúplné větvení #include <stdio.h> int main() { float x; printf(”Zadej cislo: ”); scanf(”%f”,&x); if (x < 0) printf(”|x|=%.0f\n”, x*(-1)); else printf(”|x| = %.0f\n”,x); return(0); } #include <stdio.h> int main() { float x; printf(”Zadej cislo: ”); scanf(”%f”,&x); if (x < 0) { printf(”|x|=%.0f\n”, x*(-1)); } else { printf(”|x| = %.0f\n”,x); } return(0); } Pokud je v pravdivé či nepravdivé větvi jeden příkaz, je na nás, zda použijeme {}. V případě více příkazů jsou {} povinné.

Neúplné větvení Sémantika (stejná jak v TP) Vývojový diagram Jestliže je splněna podmínka (vrací nenulovou hodnotu), vykonají se příkazy pravdivé větve, když není (vrací nulu), přes nepravdivou větev se pouze projde (nejsou v ní příkazy, tak není co vykonávat). Podmínka + - Příkaz(y)

if syntaxe if (podmínka) { jeden nebo více příkazů pravdivé větve } Protože v nepravdivé větvi nejsou žádné příkazy, není ani v zápisu. Pokud je v pravdivé větvi jeden příkaz, je na nás, zda použijeme { } či nikoliv. V případě více příkazů jsou { } povinné.

C – neúplné větvení Nakresli vývojový diagram a napiš zdrojový kód. Řeš s využitím neúplného větvení. Uživatel zadá číslo. Vypočte se jeho absolutní hodnota a výsledek se vypíše na obrazovku. |7|=7 obecně |x|=x pokud je x kladné |-8|=8 obecně |x|=-x pokud je x záporné

if neúplné větvení Start Stop scanf(”%f”,&x) x < 0 - + x=x*(-1) printf(”|x|=%.0f\n”, x) Stop

if neúplné větvení #include <stdio.h> int main() { float x; printf(”Zadej cislo: ”); scanf(”%f”,&x); if (x < 0) x=x*(-1); printf(”|x| = %.0f\n”,x); return(0); } #include <stdio.h> int main() { float x; printf(”Zadej cislo: ”); scanf(”%f”,&x); if (x < 0) { x=x*(-1); } printf(”|x| = %.0f\n”,x); return(0); } Pokud je v pravdivé či nepravdivé větvi jeden příkaz, je na nás, zda použijeme {} či nikoliv. V případě více příkazů jsou {} povinné.

C – větvení Nakresli vývojový diagram a napiš kód. Uživatel zadá dvě čísla. Jestliže nebude druhé zadané číslo nula, čísla se vydělí, jinak se vypíše „nulou dělit nelze“ a toto tvrzení se podtrhne. Uživatel zadá celé číslo. Vypíše se, zda je zadané číslo liché nebo sudé. Uživatel zadá dvě celá čísla. Určí se, zda jsou navzájem dělitelná.

C – větvení Nakresli vývojový diagram a napiš zdrojový kód. Uživatel zadá číslo a program vypíše buď je to známka (pro čísla 1, 2, 3, 4, 5) nebo není to známka. Program určí, zda uživatelem zadané číslo leží v intervalu (2,7>. Uživatel zadá tři kladná čísla – třetí největší. Vypište Je to trojúhelník nebo Není to trojúhelník.

if vnořování V kladné větvi či záporné může být libovolný příkaz, tedy i další if. Předchozí věta nám říká, že příkazy if lze do sebe zanořovat. Je-li v sobě vnořeno několik if, patří else k poslednímu if bez else.

if vnořování Nakresli vývojový diagram k tomuto zdrojovému kódu. #include <stdio.h> int main() { float x,y; printf(”Zadej prvni cislo :”); scanf(”%f”,&x); printf(”Zadej druhe cislo :”); scanf(”%f”,&y); if (x > y) { printf(”Vetsi cislo je %f\n”,x); printf(”Mensi cislo je %f\n”,y);} else if (x = = y) printf(”Cisla jsou stejna.\n”); else { printf(”Vetsi cislo je %f\n”,y); printf(”Mensi cislo je %f\n”,x);} return(0); } Nakresli vývojový diagram k tomuto zdrojovému kódu.

Pascal – úplné větvení (opakování) Nakresli vývojový diagram a napiš zdrojový kód. Uživatel zadá číslo. Vypíše se, zda je zadané číslo nula, kladné nebo záporné. (Tedy vždy jen jeden z uvedených výpisů.)

C – if Uživatel zadá, zda chce u obdélníku vypočítat obsah či obvod a pak jeho rozměry. Program spočte požadované. Uživatel zadá reálné číslo, jeden ze znaků +, –, * nebo / a poté druhé reálné číslo. Program vypíše výsledek. Jsou zadána tři čísla. Napiš program, který určí největší z nich. Napiš program, který vypočte kvadratickou rovnici.