dum | žák

Programování C#

Název školy Vyšší odborná škola obalové techniky a Střední škola, Štětí, příspěvková organizace
Adresa školky Kostelní 134, 411 08 Štětí
46773509
Název operačního programu OP Vzdělávání pro konkurenceschopnost
Registrační číslo CZ.1.07/1.5.00/34.1006
Označení vzdělávacího materiálu VY_32_INOVACE_23_PRG_453
Název tématické oblasti (sady) Programování
Název materiálu Co když - cvičení
Anotace Soubor úloh pro procvičování práce s řídícími konstrukcemi.
Autor Ivan Pomykacz Jazyk čeština
Očekávaný výstup Tvoří výrazy. Tvoří jednoduché, jednoúčelové aplikace, které dokáží podmíněně vykonávat konkrétní bloky kódu dle vyhodnoceného výrazu. Navrhuje a realizuje vlastní větvení kódu.
Klíčová slova podmínka, výraz, větvení kódu
Druh výukového zdroje Pracovní list Věková skupina žáků 15+
Typ interakce aktivita Ročník 1.
Speciální vzdělávací potřeby žádné
Zhotoveno, (datum/období) 07.10.2013 Celková velikost

pdf icon
Cvičení VIII - Diagram 2

Obsah

Pomocné metody

Následující kód obsahuje tři pomocné metody.

Celý kód zkopírujte a vložte do svého projektu takovým způsobem, aby nově vložený kód byl na stejné úrovni, jako je metoda Main.

public static bool Otazka() {
    string klav;
    bool odpoved;
 
    while (true) {
        klav = Odpoved();
        if (klav == "ano") {
            odpoved = true;
            break;
        }
        else if (klav == "ne") {
            odpoved = false;
            break;
        }
        else {
            NapisPomalu("Nerozumím, zadej buď \"ano\" nebo \"ne\".");
        }
    }
 
    return odpoved;
}
 
public static void Pauza(int doba = 200) {
    Thread.Sleep(doba);
}
 
public static string Odpoved() {
    Console.Write(": ");
    return Console.ReadLine();
}
 
public static void NapisPomalu(string text) {
    int rychlost = 100;
 
    foreach (char znak in text.ToCharArray()) {
        if (rychlost > 50) {
            Thread.Sleep(rychlost);
        }
        Console.Write(znak);
    }
    Console.Write("\n");
}
 

Pokud použijete sbalovací tlačítka vlevo od kódu -, na všechny metody, měli byste vidět podobný přehled, jako na obrázku. (Na obrázku už je kód i zarovnaný)

Všimněte si hlavně mezi jakými závorkami je kód vložený. Až doposud jsme totiž vkládali kód jen do metody Main.

Using

Nakonec ještě dopište do horní části kódu, hned za using System; nový řádek: using System.Threading;.

using System;
using System.Threading;
 

Otestujte klávesou F8, zda je vše OK.

Příklad

Vytvořte si vlastní diagram s otázkami a odpověďmi. Následně proveďte jeho implementaci s využitím metod NapisPomalu a Otazka.

Řešení

NapisPomalu("Program: Pomalu v1.0");
 
bool odp;
 
NapisPomalu("Píše se ti rychle?");
odp = Otazka();
if (odp == true) {
    NapisPomalu("Tak OK, není co řešit");
}
else {
    NapisPomalu("A chceš zrychlit?");
    odp = Otazka();
    if (odp == true) {
        NapisPomalu("Co psaní všemi deseti?");
        odp = Otazka();
        if (odp == true) {
            NapisPomalu("Na netu je celkem dost kurzů i zdarma.");
        }
        else {
            NapisPomalu("Je to moc těžký?");
            odp = Otazka();
            if (odp == true) {
                NapisPomalu("Jo, souhlasím.");
            }
            else {
                NapisPomalu("No, pokud si o nějaký prst přišel, tak mě to mrzí.");
            }
        }
    }
    else {
        NapisPomalu("Hmm, tak nic.");
    }
}