namespace Konzolová_kalkulačka_v5._0
public static void Main(string[] args)
Console.WriteLine("Konzolová kalkulačka v5.0 (czechitas) + - * / ^ Q\nVlastimil 29.10.2021");
Console.WriteLine("Po každém výpočtu zobrazí výsledek a mužete přidat další operaci, ukončíte písmenem 'Q'");
string cislo1String = string.Empty;
string cislo2String = string.Empty;
string operace = string.Empty;
double vysledekMocneni = 1;
Console.Write("Zadejte prosím číslo [Q pro ukončení]: ");
cislo1String = Console.ReadLine();
bool spravneZadaneCislo1 = double.TryParse(cislo1String, out cislo1);
while (spravneZadaneCislo1 == false)
if (cislo1String == "q" || cislo1String == "Q")
Console.WriteLine("Konec kalkulačky");
Console.Write("\nNezadali jste spravne cislo, prosim zkuste znovu: ");
spravneZadaneCislo1 = double.TryParse(Console.ReadLine(), out cislo1);
while (cislo1String != "q" && cislo1String != "Q" && cislo2String != "q" && cislo2String != "Q"
&& operace != "q" && operace != "Q")
Console.Write("Zadejte prosím číslo [Q pro ukončení]: ");
cislo2String = Console.ReadLine();
bool spravneZadaneCislo2 = double.TryParse(cislo2String, out cislo2);
while (spravneZadaneCislo2 == false)
if (cislo2String == "q" || cislo2String == "Q")
Console.WriteLine("Konec kalkulačky");
Console.WriteLine("\nNezadali jste spravne cislo, prosim zkuste znovu: ");
spravneZadaneCislo2 = double.TryParse(Console.ReadLine(), out cislo2);
Console.Write("vyberte požadovanou operaci (+ - * / ^) [Q pro ukončení] ");
operace = Console.ReadLine();
while (operace != "Q" && operace != "q" && operace != "+" && operace != "-" &&
operace != "*" && operace != "/" && operace != "÷" && operace != "×" && operace != "^")
if (operace == "q" || operace == "Q")
Console.WriteLine("Konec kalkulačky");
Console.Write("\nZadal jse špatný operátor. \nZkuste to znovu: (+ - * / ^) ");
operace = Console.ReadLine();
vysledek = cislo1 + cislo2;
Console.WriteLine("\nVýsledek je {0} + {1} = {2}", cislo1, cislo2, vysledek);
vysledek = cislo1 - cislo2;
Console.WriteLine("\nVýsledek je {0} - {1} = {2}", cislo1, cislo2, vysledek);
else if (operace == "*" || operace == "×")
vysledek = cislo1 * cislo2;
Console.WriteLine("\nVýsledek je {0} × {1} = {2}", cislo1, cislo2, vysledek);
else if (operace == "/" || operace == "÷")
vysledek = cislo1 / cislo2;
Console.WriteLine("\nVýsledek je {0} ÷ {1} = {2}", cislo1, cislo2, vysledek);
Console.WriteLine("nelze dělit nulou");
for (int q = 1; q <= cislo2; q++)
vysledekMocneni = vysledekMocneni * cislo1;
Console.WriteLine("{0}^{1} = {2} ", cislo1, q, vysledekMocneni);
Console.WriteLine("\nVýsledek je {0}^{1} = {2}", cislo1, cislo2, vysledekMocneni);
cislo1 = vysledekMocneni;