以下のコードにはいくつか問題があります。私はまだ学んでいるし、それを修正する方法がわからない。C#でメソッドを使用して変数を格納する方法は?
1.私がしようとしているのは、私のメインメソッドに入る2番目のメソッド(GetTrack)でしようとしているような変数を格納するメソッド(GetInt)を作成することです。無効な入力をtheresの、私はのtry/catchとブールブツ
に何か問題があると推測しているとき
2-Iは、ループにgetIntメソッドを取得することはできません
//Get int Method
static public void GetInt(string sPrompt, int iMin, int iMax)
{
int iNum;
bool bError = false;
do
{
bError = true;
try
{
Console.Write(sPrompt);
iNum = int.Parse(Console.ReadLine());
if ((iNum < iMin) || (iNum > iMax))
{
Console.WriteLine("The value is out of range.");
bError = true;
}
}
catch (ArgumentException)
{
Console.WriteLine("An invalid number was entered, please try again.");
bError = true;
}
}
while (bError == false);
}
//Get Track Method
static public void GetTrack()
{
int iMin;
int iSec;
iMin = GetInt("Enter the minutes: ", 0, 10);
iSec = GetInt("Enter the seconds: ", 0, 59);
}
に合わせて変更さ
は 'void'ボイド何方法を行う上で迅速なGoogle検索を行います。.. 'return values 'に関して – MethodMan
' try'は 'iNum = int.Parse(Console.ReadLine());'をラップするだけで、他の例外を捕まえることはできません。たとえば 'sPrompt'が' null'の場合、 'Console.Write'は例外をスローしますが、あなたのプログラムはその例外を単に捕らえて、数字が有効であっても"無効な番号、再試行 "と言うでしょう、それは' sPrompt'です。それは無効です。 – Quantic