私はC#で始まりました。まず第一に、私のコードについてどう思いますか、改善すべきことは何ですか?第二に、ユーザーに2つの数字を入力するように頼んだら、どうやって数字を入力するだけですか?ユーザーが別の文字を入力すると、ループが止まり、プログラムがクラッシュします。ユーザ入力の数字だけを許可する方法
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
namespace App1
{
class Program
{
static void Main(string[] args)
{
bool retry = true;
while (retry)
{
retry = true;
double x1;
double x2;
double x3;
string calc;
Console.WriteLine("**** Hello, Welcome to Calculator ****");
Console.WriteLine("Type a number please: ");
x1 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n Now type another number: ");
x2 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n Now please select a calculation:(/,*,+/-)");
calc = Convert.ToString(Console.ReadLine());
if (calc == "*")
{
x3 = (x1 * x2);
Console.WriteLine("\n Your Numbers equal = " + x3);
retry = false;
}
else if (calc == "/")
{
x3 = (x1/x2); Console.WriteLine("\n Your Numbers equal = " + x3);
retry = false;
}
else if (calc == "+")
{
x3 = (x1 + x2);
Console.WriteLine("\n Your Numbers equal = " + x3);
retry = false;
}
else if (calc == "-")
{
x3 = (x1 - x2);
Console.WriteLine("\n Your Numbers equal = " + x3);
retry = false;
}
else
{
Console.WriteLine("\n Error, please type one of the 4 calculations: ");
retry = true;
}
//Don't Exit:
Console.ReadKey();
//Don't Exit:
}
}
}
}
ありがとう、私のコードではx1とx2に値がないとは言えません。 – user1930233
申し訳ありませんが、それを逃した。編集を確認してください。 – stybl
素晴らしい、完璧に動作します。あなたが言ったのと同様にswitch文を調べます。 – user1930233