Výukový materiál zpracován v rámci projektu EU peníze školám Název školy Střední škola elektrostavební a dřevozpracující, Frýdek-Místek, příspěvková organizace Adresa školy Pionýrů 2069, 73801 Frýdek-Místek IČ 13644301 Název operačního programu OP Vzdělávání pro konkurenceschopnost Registrační číslo CZ.1.07/1.5.00/34.0149 Označení vzdělávacího materiálu VY_32_INOVACE_10_30ŠebM-12 Název tematické oblasti (sady) Základy programování v jazyce C# Název vzdělávacího materiálu Příklady s využitím iterace 6 Druh učebního materiálu Cvičení v prostředí Microsoft Visual Studio Anotace Téma je určeno žákům studijního oboru elektro na získání základních znalostí a vědomostí v algoritmizaci a programování. Klíčová slova algoritmus,vývojový diagram,zdrojový text programu Vzdělávací obor, pro který je materiál určen 26-41-M/01 Elektrotechnika Ročník IV. Typická věková skupina 18 let Speciální vzdělávací potřeby žádné Autor Ing.Milan Šebestík Zhotoveno, (datum/období) 1.9. až 30.10..2012 Celková velikost 173 kB Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Milan Šebestík,použitá literatura:ing.Jana Pšenčíková: Algoritmizace ,Dostupné z portálu www.ssed-fm.cz
34. Příklady s využitím iterace 6 Vytvořte algoritmus a napište program,který načte čísla z klávesnice zjistí nejmenší a největší z nich.Počet testovaných čísel je ošetřen vstupní podmínkou, která vyhodnotí číslo 0 jako konec cyklu. Příklad 25 - Zvolíme cyklus se vstupní podmínkou, -v prvním kroku načteme číslo z klávesnice a uložíme jej do proměnné X, nastavíme maximum na nejmenší hodnotu a minimum na největší hodnotu, -v druhém kroku vyhodnotíme podmínku,zda načtené číslo X se nerovná -1, -v těle cyklu jsou dva podmíněné bloky určené ke zjištění dočasného maxima a minima, -na konci těla cyklu načítáme novou proměnnou X a vracíme se na blok vstupní podmínky, -po skončení cyklu vypíšeme na monitor obsahy proměnných MAX a MIN, ve kterých se nyní nachází výsledné hodnoty testu.
Begin Write: MAX, MIN - + Read: X End X =! 0 X>MAX MAX=X X<MIN Nastavení počátečních hodnot proměnných MAX a MIN MAX=0 MIN=32767 Write: MAX, MIN Načtení čísla z klávesnice a uložení do proměnné X Read: X End X =! 0 Vyhodnocení vstupní podmínky cyklu X>MAX V těle cyklu jsou testy na nové maximum nebo minimum MAX=X X<MIN MIN=X Zobrazení obsahu výsledných proměnných MAX a MIN na monitor Read: X
Zdrojový text programu int min,max; short x; max = 0; min = 32767; Console.Write("Zadej číslo z klávesnice: "); x = Convert.ToInt16(Console.ReadLine()); while (x != -1) { if (x > max) max = x; if (x < min) min = x; } Console.Write("Maximum je: {0},minimum je {1}", max,min); Console.Read();
Vytvořte algoritmus a napište program,který z čísel načtených z kláves- nice zobrazí na monitoru,kolik z nich je kladných a záporných. Počet čísel ošetříme podmínkou,kdy načteme číslo nula. Příklad 26 Zvolíme cyklus se vstupní podmínkou,protože přesně nevíme,kolikrát cyklus musí proběhnout, -v prvním kroku vynulujeme proměnné KLAD a ZAP a načteme z klávesnice číslo, které uložíme do proměnné X, -číslo X otestujeme v bloku vstupní podmínky,zda se nerovná nule, -v těle cyklu budeme jej testovat,zdaje větší nebo menší než 0 a na základě toho zvětšovat obsah proměnných KLAD a ZAP, -na konci cyklu načteme nové číslo X a vrátíme se na blok vstupní podmínky, -po ukončení cyklu načtením nuly do proměnné X obsah těchto proměnných vypíšeme na monitor.
Begin Write: KLAD=0 KLAD,ZAP ZAP=0 - + Read: X End X=!0 X>0 KLAD++ Počáteční vynulování proměnných KLAD a ZAP Write: KLAD,ZAP KLAD=0 ZAP=0 Načtení čísla z klávesnice a uložení do proměnné X Read: X End X=!0 Vyhodnocení vstupní podmínky cyklu X>0 KLAD++ Je-li X kladné,budeme v těle cyklu inkrementovat proměnnou KLAD, bude-li X záporné,budeme inkrementovat proměnnou ZAP X<0 ZAP++ Zobrazení obsahu výsledných proměnných KLAD a ZAP na monitor Read: X
Zdrojový text programu int x,klad,zap; klad = 0; zap = 0; Console.Write("Zadej číslo z klávesnice: "); x = Convert.ToInt16(Console.ReadLine()); while (x != 0) { if (x > 0) klad++; if (x < 0) zap++; } Console.Write("Počet kladných čísel je: {0},záporných je {1}", klad, zap); Console.Read();