Diskuze: Minibankomat

C# .NET .NET (C# a Visual Basic) Minibankomat American English version English version

Avatar
LEXMORR
Člen
Avatar
LEXMORR:

Poradíte mi ako mám tu nastaviť else? Alebo inú podmienku...

Console.WriteLine("Vitajte v minibankomate!");
            Console.WriteLine("Ako sa voláš?");
            string a;
            a = Console.ReadLine();
            Console.WriteLine("Ahoj " + a);
            Console.WriteLine("Vyber si z možnosti:");
            Console.WriteLine("1 - Vybrať peniaze");
            Console.WriteLine("2 - Nabiť kredit na mobile");
            char volba = Console.ReadKey().KeyChar;

            string vybratpeniaze = "Môžeš si vybrať 10, 20 alebo 50 eur.";
            string peniaze = "10";
            string peniazetwo = "20";
            string peniazethree = "50";
            string kredit = "3";
            string kreditwo = "7";
            string kredithree = "10";
            switch (volba)
            {
                case '1':
                    Console.WriteLine(vybratpeniaze);
                    string b;
            b = Console.ReadLine();

            if (b == peniaze)
            {
                Console.WriteLine("Vybral si si " + b + "eur!");
            }

            if (b == peniazetwo)
            {
                Console.WriteLine("Vybral si si " + b + "eur!");
            }

            if (b == peniazethree)
            {
                Console.WriteLine("Vybral si si " + b + "eur!");
            }

                break;
                case '2':
                     Console.WriteLine("Môžeš si nabiť kredit na 3, 7 alebo 10 eur.");
                    b = Console.ReadLine();

            if (b == kredit)
            {
                Console.WriteLine("Mobil si si nabil na " + b + "eur!");
            }

            if (b == kreditwo)
            {
                Console.WriteLine("Mobil si si nabil na " + b + "eur!");
            }

            if (b == kredithree)
            {
                Console.WriteLine("Mobil si si nabil na " + b + "eur!");
            }

                break;
            }
            Console.WriteLine("Ďakujeme za využitie služib #### banky! Bankomat ukončíte stlačením ľubovolnej klávesnice.");
            Console.ReadKey();
Odpovědět 16.11.2012 21:46
Život je ako program, musíš si ho zorganizovať podľa seba, ale môže sa nájsť aj chybička
Avatar
matesax
Redaktor
Avatar
Odpovídá na LEXMORR
matesax:

Fuj!

Console.WriteLine("Vitajte v minibankomate!");
Console.WriteLine("Ako sa voláš?");
string name = Console.ReadLine();
Console.WriteLine("Ahoj " + name + "!");
Console.WriteLine("Vyber si z možnosti:");
Console.WriteLine("1 - Vybrať peniaze");
Console.WriteLine("2 - Nabiť kredit na mobile");
char volba = Console.ReadKey().KeyChar;

string vybratpeniaze = "Môžeš si vybrať 10, 20 alebo 50 eur.";
string[] much = { "10", "20", "50", "3", "7", "10" };

switch (volba)
{
    case '1':

        Console.WriteLine(vybratpeniaze);
        string result = Console.ReadLine();
        Console.WriteLine(much.Contains(result) ? "Vybral si si " + result + "eur!" : "Špatný vstup!");

        break;

    case '2':

        Console.WriteLine("Môžeš si nabiť kredit na 3, 7 alebo 10 eur.");
        string result2 = Console.ReadLine();
        Console.WriteLine(much.Contains(result) ? "Mobil si si nabil na " + result2 + "eur!" : "Špatný vstup!");

        break;
}

Console.WriteLine("Ďakujeme za využitie služib #### banky! Bankomat ukončíte stlačením ľubovolnej klávesnice.");
Console.ReadKey();
Editováno 16.11.2012 22:39
 
Nahoru Odpovědět 16.11.2012 22:35
Avatar
LEXMORR
Člen
Avatar
LEXMORR:

Tak ja som nový :(

Nahoru Odpovědět 16.11.2012 22:40
Život je ako program, musíš si ho zorganizovať podľa seba, ale môže sa nájsť aj chybička
Avatar
matesax
Redaktor
Avatar
Odpovídá na LEXMORR
matesax:

Sorry... Větvit program to chce v místě, kde to má skutečně smysl. Pro více věcí stejného druhu (zde stringu) používej pole - viz. tutoriály zde... A to s tím ?, to je ternární operátor - zkrácená podmínka - opět odkazuji tutoriály zde...

A sorry - koukám, že chceš 2 cenové linie - takže si rozděl to pole na 2:

string[]
    vyber = { "10", "20", "50" };
    nabiti = { "3", "7", "10" };
Editováno 16.11.2012 22:51
 
Nahoru Odpovědět 16.11.2012 22:49
Avatar
LEXMORR
Člen
Avatar
LEXMORR:

Ale dôležité je, že to funguje :D

Nahoru Odpovědět 16.11.2012 22:51
Život je ako program, musíš si ho zorganizovať podľa seba, ale môže sa nájsť aj chybička
Avatar
matesax
Redaktor
Avatar
Odpovídá na LEXMORR
matesax:

To, že to funguje, neznamená, že to funguje správně. Programovat programátorsky správně má dost velký smysl - výkon, snadná orientace v kódu pro ostatní, ...

 
Nahoru Odpovědět 17.11.2012 6:50
Avatar
LEXMORR
Člen
Avatar
LEXMORR:

Jasné no musím sa ešte toho dosť naučiť. Teraz som si spravil iba taký ale keď sa naučím aj pole tak to skúsim aj s nimi...

Nahoru Odpovědět 17.11.2012 18:28
Život je ako program, musíš si ho zorganizovať podľa seba, ale môže sa nájsť aj chybička
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.