namespace Kalkulačka_v._6
public string MatOperator;
public double VysledekOperace;
public void NastavPrvniCislo(double cislo)
public bool JePlatnyOperator(string matOperator)
MatOperator = matOperator;
if (MatOperator == "+" || MatOperator == "-" || MatOperator == "*" || MatOperator == "/" || MatOperator == "^")
public double ProvedVypocet(string matOperator, double cislo2)
MatOperator = matOperator;
VysledekOperace = Cislo1 + Cislo2;
else if (MatOperator == "-")
VysledekOperace = Cislo1 - Cislo2;
else if (MatOperator == "*")
VysledekOperace = Cislo1 * Cislo2;
else if (MatOperator == "/")
VysledekOperace = Cislo1 / Cislo2;
else if (MatOperator == "^")
if (Cislo2 != VysledekOperace)
VysledekOperace = Cislo1;
for (int i = 1; i < Cislo2; i++)
VysledekOperace = VysledekOperace * Cislo1;
public static void Main(string[] args)
Kalkulacka kalkulacka = new Kalkulacka();
Console.WriteLine("**VÍTEJ V KALKULAČCE**");
Console.WriteLine("Kalkulačku lze použít opakovaně. Pro ukončení kalkulačky můžeš kdykoliv zadat písmeno X.");
Console.WriteLine("Zadej první číslo pro matematickou operaci:");
string cislo1jakoText = Console.ReadLine();
bool vysledekParsovani1 = double.TryParse(cislo1jakoText, out cislo1);
while (vysledekParsovani1 != true)
if (cislo1jakoText == "X")
Console.WriteLine("Kalkulačka končí.");
Console.WriteLine("Nejedná se o číslo, zadej znovu: ");
cislo1jakoText = Console.ReadLine();
vysledekParsovani1 = double.TryParse(cislo1jakoText, out cislo1);
Console.WriteLine("Zadej validní operátor pro matematickou operaci (+-*/^):");
kalkulacka.NastavPrvniCislo(cislo1);
string matOperator = Console.ReadLine();
while (kalkulacka.JePlatnyOperator(matOperator) != true)
Console.WriteLine("Kalkulačka končí.");
Console.WriteLine("Nezadal jsi validní matematický operátor, zadej znovu: ");
matOperator = Console.ReadLine();
Console.WriteLine("Zadal jsi validní matematický operátor, zadej druhé číslo: ");
string cislo2jakoText = Console.ReadLine();
bool vysledekParsovani2 = double.TryParse(cislo2jakoText, out cislo2);
while (vysledekParsovani2 != true)
if (cislo2jakoText == "X")
Console.WriteLine("Kalkulačka končí.");
Console.WriteLine("Nejedná se o číslo, zadej znovu: ");
cislo2jakoText = Console.ReadLine();
vysledekParsovani2 = double.TryParse(cislo2jakoText, out cislo2);
cislo1 = kalkulacka.ProvedVypocet(matOperator, cislo2);
Console.WriteLine("Výsledek je: " + kalkulacka.Cislo1 + " " + kalkulacka.MatOperator + " " + kalkulacka.Cislo2 + " = " + kalkulacka.VysledekOperace);