public string MatematickyOperator;
public void NactiPrvniCislo(double prvniCislo)
public void NactiMatematickyOperator(string znamenko)
MatematickyOperator = znamenko;
public bool OverOperator(string znamenko)
bool jeOperator = (znamenko == "+") || (znamenko == "-") || (znamenko == "*") || (znamenko == "/") || (znamenko == "^") || (znamenko == "X");
public void NactiDruheCislo(double druheCislo)
vysledek = cislo1 + cislo2;
vysledek = cislo1 - cislo2;
vysledek = cislo1 * cislo2;
vysledek = cislo1 / cislo2;
public bool OverDelitele()
for (int i = 1; i <= (cislo2 - 1); i++)
vysledek = vysledek * cislo1;
public void AktualniVysledek()
public void vypisInformace()
Console.WriteLine("Výsledek: " + cislo1 + MatematickyOperator + cislo2 + " = " + vysledek);
public void ukonciKalkulacku()
Console.WriteLine("Kalkulačka se vypíná.");
public static void Main()
Kalkulacka kalkulacka = new Kalkulacka();
Console.WriteLine("Zadej první číslo: ");
string prvniCisloText = Console.ReadLine();
bool jeCislo1 = double.TryParse(prvniCisloText, out prvniCislo);
if (prvniCisloText == "X")
kalkulacka.ukonciKalkulacku();
Console.WriteLine("Nezadal jsi číslo.");
Console.WriteLine("Zadej první číslo znovu:");
prvniCisloText = Console.ReadLine();
jeCislo1 = double.TryParse(prvniCisloText, out prvniCislo);
kalkulacka.NactiPrvniCislo(prvniCislo);
kalkulacka.vysledek = kalkulacka.cislo1;
string druheCisloText = "nic";
while ((znamenko != "X") || (druheCisloText != "X"))
Console.WriteLine("Zadej matematický operátor (+, -, *, /, ^) nebo X pro vypnutí programu: ");
znamenko = Console.ReadLine();
kalkulacka.OverOperator(znamenko);
kalkulacka.ukonciKalkulacku();
while (kalkulacka.OverOperator(znamenko) == false)
Console.WriteLine("Matematický operátor byl zadán špatně.");
Console.WriteLine("Zadej operátor znovu: ");
znamenko = Console.ReadLine();
kalkulacka.OverOperator(znamenko);
kalkulacka.NactiMatematickyOperator(znamenko);
Console.WriteLine("Zadej druhé číslo nebo X pro vypnutí programu: ");
druheCisloText = Console.ReadLine();
bool jeCislo2 = double.TryParse(druheCisloText, out Cislo2);
if (druheCisloText == "X")
kalkulacka.ukonciKalkulacku();
Console.WriteLine("Toto není číslo.");
Console.WriteLine("Zadej druhé číslo znovu: ");
druheCisloText = Console.ReadLine();
jeCislo2 = double.TryParse(druheCisloText, out Cislo2);
kalkulacka.NactiDruheCislo(Cislo2);
else if (znamenko == "-")
else if (znamenko == "*")
else if (znamenko == "/")
while (kalkulacka.OverDelitele() == true)
Console.WriteLine("Nulou nelze dělit, zadej druhé číslo znovu.");
druheCisloText = Console.ReadLine();
jeCislo2 = double.TryParse(druheCisloText, out Cislo2);
else if (znamenko == "^")
kalkulacka.vypisInformace();