Witam, postanowiłem stworzyć prosty kalkulator w C#, niestety mam problem z instrukcją warunkową switch. Po wyborze działania program 3 razy wykonuje defaultową opcję. Oto kod:
using System;
namespace ConsoleApp1
{
public class Program
{
static void Main(string[] args)
{
Console.WriteLine("Witaj w C# -owym kalkulatorze!");
Console.WriteLine("Jakie działanie chcesz wykonać?");
int choose = 0, a = 0, b = 0;
double c = 0;
while (choose != 7)
{
Console.WriteLine("1. Dodawanie");
Console.WriteLine("2. Odejmowanie");
Console.WriteLine("3. Mnożenie");
Console.WriteLine("4. Dzielenie");
Console.WriteLine("5. Potęgowanie");
Console.WriteLine("6. Pierwiastkowanie");
Console.WriteLine("7. Wyjscie");
choose = Convert.ToInt32(Console.Read());
switch (choose)
{
case 1:
{
Console.WriteLine("Podaj 1 liczbe: ");
a = Console.Read();
Console.WriteLine("Podaj 2 liczbe: ");
b = Console.Read();
c = a + b;
Console.WriteLine("Wynik to: {1} ", c);
break;
}
case 2:
{
Console.WriteLine("Podaj 1 liczbe: ");
a = Console.Read();
Console.WriteLine("Podaj 2 liczbe: ");
b = Console.Read();
c = a - b;
Console.WriteLine("Wynik to: {1} ", c);
break;
}
case 3:
{
Console.WriteLine("Podaj 1 liczbe: ");
a = Console.Read();
Console.WriteLine("Podaj 2 liczbe: ");
b = Console.Read();
c = a * b;
Console.WriteLine("Wynik to: {1} ", c);
break;
}
case 4:
{
Console.WriteLine("Podaj 1 liczbe: ");
a = Console.Read();
Console.WriteLine("Podaj 2 liczbe: ");
b = Console.Read();
c = a / b;
Console.WriteLine("Wynik to: {1} ", c);
break;
}
case 5:
{
Console.WriteLine("Podaj liczbe potegowana: ");
a = Console.Read();
Console.WriteLine("Podaj stopien potegi: ");
b = Console.Read();
c = Math.Pow(a, b);
Console.WriteLine("Wynik to: {1} ", c);
break;
}
case 6:
{
Console.WriteLine("Podaj liczbe pierwiastkowna: ");
a = Console.Read();
c = Math.Sqrt(a);
Console.WriteLine("Wynik to: {1} ", c);
break;
}
case 7:
{
Environment.Exit(0);
break;
}
default:
{
Console.WriteLine("Nie ma takiej opcji");
break;
}
}
}
}
}
}
Pomocy .