public double prvniCislo;
public double druheCislo;
public int druheCisloMocnina;
public bool KontrolaOperatoru()
if (!(oper == "+" || oper == "-" || oper == "*" || oper == "/" || oper == "^"))
public bool KontrolaDeleni()
if ((oper == "/") && (druheCislo == 0))
public double VypocetVysledku()
vysledek = prvniCislo + druheCislo;
vysledek = prvniCislo - druheCislo;
else if ((oper == "/") && ((druheCislo > 0) || (druheCislo < 0)))
vysledek = prvniCislo / druheCislo;
vysledek = prvniCislo * druheCislo;
for (int mocnina = (druheCisloMocnina); mocnina > 0; mocnina = mocnina - 1)
vysledek = vysledek * prvniCislo;
public void ZobrazVysledek()
Console.WriteLine("Vysledek: " + prvniCislo + " " + oper + " " + druheCislo + " = " + vysledek);
static void Main(string[] args)
Kalkulacka kalkulacka = new Kalkulacka();
Console.WriteLine("Vítej, jsem tvoje kalkulačka! Zadávej čísla a operátory dle pokynů, pokud tě počítání omrzí, zadej X a aplikace se ukončí. Nyní zadej první číslo: ");
string prvniCisloText = Console.ReadLine();
bool jeCislo = double.TryParse(prvniCisloText, out kalkulacka.prvniCislo);
if (prvniCisloText == "X")
Console.WriteLine("Aplikace se nyní ukončí, děkuji za její využití!");
Console.WriteLine("Zadal jste špatný vstup, vložte první číslo znovu:");
prvniCisloText = Console.ReadLine();
jeCislo = double.TryParse(prvniCisloText, out kalkulacka.prvniCislo); ;
Console.WriteLine("Zadej matematický operátor +, -, *, / nebo ^:");
kalkulacka.oper = Console.ReadLine();
if (kalkulacka.oper == "X")
Console.WriteLine("Aplikace se nyní ukončí, děkuji za její využití!");
while (kalkulacka.KontrolaOperatoru() == false)
Console.WriteLine("Zadal jsi špatný vstup, vložte matematický operátor znovu:");
kalkulacka.oper = Console.ReadLine();
Console.WriteLine("Zadej další číslo");
if (kalkulacka.oper == "^")
druheCisloText = Console.ReadLine();
jeDruheCislo = int.TryParse(druheCisloText, out kalkulacka.druheCisloMocnina);
kalkulacka.druheCislo = kalkulacka.druheCisloMocnina;
if (druheCisloText == "X")
Console.WriteLine("Aplikace se nyní ukončí, děkuji za její využití!");
druheCisloText = Console.ReadLine();
jeDruheCislo = double.TryParse(druheCisloText, out kalkulacka.druheCislo);
if (druheCisloText == "X")
Console.WriteLine("Aplikace se nyní ukončí, děkuji za její využití!");
while (jeDruheCislo == false)
Console.WriteLine("Zadal jste špatný vstup, vložte druhé číslo znovu:");
druheCisloText = Console.ReadLine();
jeDruheCislo = double.TryParse(druheCisloText, out kalkulacka.druheCislo);
while ((jeDruheCislo = true) && (kalkulacka.oper == "^") && (kalkulacka.druheCislo < 0))
Console.WriteLine("Zadal jste špatný vstup, mocnina musí být kladné číslo, vložte druhé číslo znovu:");
druheCisloText = Console.ReadLine();
jeDruheCislo = double.TryParse(druheCisloText, out kalkulacka.druheCislo);
while (kalkulacka.KontrolaDeleni() == false)
Console.WriteLine("Nulou dělit nelze, zadej druhé číslo znovu:");
druheCisloText = Console.ReadLine();
jeDruheCislo = double.TryParse(druheCisloText, out kalkulacka.druheCislo);
kalkulacka.VypocetVysledku();
kalkulacka.ZobrazVysledek();