NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 8 - Ošetření uživatelských vstupů v C# .NET

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
havlat82
Člen
Avatar
Odpovídá na David Hartinger
havlat82:27.8.2017 12:51

No spíš se vrhnu na ASP.Net a návrhový vzory, ty fakt potřebuju

 
Odpovědět
27.8.2017 12:51
Avatar
František Hejský:30.8.2017 22:19

Mam tam někde chybu a nevim kde:

using System;
using System.Collec­tions.Generic;
using System.Linq;
using System.Text;
using System.Threadin­g.Tasks;

namespace Opravená_kalkulačka
{
class Program
{
static void Main(string[] args)
{
Console.Write­Line("Vítejte v kalkulačce");
bool pokracovat = true;
while (pokracovat)
{
Console.Write­Line("Zadejte první číslo");
float a;
while (!float.TryPar­se(Console.Re­adLine(), out a))
Console.Write­Line("Neplatné číslo, zadejte prosím znovu:");
Console.Write­Line("Zadejte druhé číslo");
float b;
while (!float.TryPar­se(Console.Re­adLine(), out a))
Console.Write­Line("Neplatné číslo, zadejte prosím znovu:");
Console.Write­Line("Zvolte si operaci");
Console.Write­Line("1 - sčítání");
Console.Write­Line("2 - odčítání");
Console.Write­Line("3 - násobení");
Console.Write­Line("4 - dělení");
char volba = Console.ReadKe­y().KeyChar;
Console.Write­Line();
bool platnaVolba = true;
switch (volba)
{
case "1":
vysledek = a + b;
break;
case "2":
vysledek = a - b;
break;
case "3":
vysledek = a * b;
break;
case "4":
vysledek = a / b;
break;
default:
platnaVolba = false;
break;
}
if (platnaVolba)
Console.Write­Line("Výsledek: {0}", vysledek);
else
Console.Write­Line("Neplatná volba");
Console.Write­Line("Přejete si zadat další příklad? [ano/ne]");
platnaVolba = false;
while (!platnaVolba)
{
switch (Console.Read­Key().KeyChar­.ToString().To­Lower())
{
case "ano":
pokracovat = true;
platnaVolba = true;
break;
case "ne":
pokracovat = false;
platnaVolba = true;
break;
default:
Console.Write­Line("Neplatná volba, zadejte prosím ano/ne");
break;
}
}
Console.Write­Line();
}
}

 
Odpovědět
30.8.2017 22:19
Avatar
Odpovídá na František Hejský
František Hejský:31.8.2017 19:26

Na tohle už nemusíte reagovat. Už jsem to vyřešil sám.

 
Odpovědět
31.8.2017 19:26
Avatar
Kotyza Lukáš:5.9.2017 15:21

Dobrý den osobně bych na konci kódu rád viděl vyčištění konzole pro větší přehlednost při opakovaném používání kalkulačky.

 
Odpovědět
5.9.2017 15:21
Avatar
Arny
Člen
Avatar
Arny:25.10.2017 22:03

Ahoj. Při zadání čísel na konzoli se číslo zobrazí a další řádek vypíše " Neplatné číslo zadejte prosím znovu" - proč? To by mělo vyhodit jen v případě nepodařeného parsování (zadání písmen), nebo se pletu? Dál to pak funguje správně. Kde tam mám chybu? Díky
{
Console.Write­Line("Vítejte v kalkulačce");
bool pokracovat = true;
while (pokracovat)
{
Console.Write­Line("Napiš první číslo");
float a;
while (!float.TryPar­se(Console.Re­adLine(), out a));
Console.Write­Line("Neplatné číslo zadejte prosím znovu");
Console.Write­Line("Napiš druhé číslo");
float b;
while (!float.TryPar­se(Console.Re­adLine(), out b));
Console.Write­Line("Neplatné číslo zadejte prosím znovu");
Console.Write­Line("Zvolte si operaci");
Console.Write­Line("1 - scitani");
Console.Write­Line("2 - odcitani");
Console.Write­Line("3 - nasobeni");
Console.Write­Line("4 - deleni");
char volba = Console.ReadKe­y().KeyChar;
Console.Write­Line();
float vysledek = 0;
bool platnaVolba = true;
switch (volba)
{
case '1':
vysledek = a + b;
break;
case '2':
vysledek = a - b;
break;
case '3':
vysledek = a * b;
break;
case '4':
vysledek = a / b;
break;
default:
platnaVolba = false;
break;
}
if (platnaVolba)
Console.Write­Line("vysledek {0} ", vysledek);
else
Console.Write­Line("Neplatná volba");
Console.Write­Line("prejete si pokracovat? [ano/ne]");
platnaVolba = false;
while (!platnaVolba)
{
switch (Console.Read­Key().KeyChar­.ToString().To­Lower())
{
case "a":
pokracovat = true;
platnaVolba = true;
break;
case "n":
pokracovat = false;
platnaVolba = true;
break;
default:
Console.Write­Line("Neplatná volba, zadej prosím a/n");
break;

}

}
Console.Write­Line();
}
}
}
}

 
Odpovědět
25.10.2017 22:03
Avatar
pocitac770
Tvůrce
Avatar
Odpovídá na Arny
pocitac770:26.10.2017 9:06

//Edit: Za while se nepíše středník, takto se ten následující řádek vykoná vždy

Editováno 26.10.2017 9:08
 
Odpovědět
26.10.2017 9:06
Avatar
Arny
Člen
Avatar
Arny:26.10.2017 19:22

Aha, diky.

 
Odpovědět
26.10.2017 19:22
Avatar
Jirka Kouba
Člen
Avatar
Jirka Kouba:6.11.2017 21:12

Z nějakýho důvodu mi to píše chybu, ale když ho zkusím spustit, funguje mi v pořádku. Posím najděte mi tu chybu :-)

           var repeater = "a";
            while (repeater = "a")
{
//kalkulačka
 Console.WriteLine("Přejete si spočítat další příklad?");
                Console.WriteLine("a/n");
                repeater = Console.ReadKey(). KeyChar;
}
 
Odpovědět
6.11.2017 21:12
Avatar
DarkCoder
Člen
Avatar
Odpovídá na Jirka Kouba
DarkCoder:6.11.2017 21:21

Co třeba místo dvojitých uvozovek používat jednoduché

Odpovědět
6.11.2017 21:21
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Avatar
Fíla N.
Člen
Avatar
Odpovídá na Kotyza Lukáš
Fíla N.:13.11.2017 22:35

Console.Clear();

;-)
 
Odpovědět
13.11.2017 22:35
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 10 zpráv z 149.