Мой цикл while не будет циклическим, если bool correctInput получает значение false. Он должен зацикливаться до тех пор, пока вход не будет правильно введен из использования. Допустимые входы - целые числа, большие, чем ноль. Все, что является целым числом, вызовет попытку catch и изменит trueInput boolean на false, вызвав цикл. Если целое число не больше нуля, чем correctInput будет повернуто к false, вызывающему цикл. Только когда пользователь вводит правильный ввод, цикл должен выйти. В настоящее время он не зацикливается, когда вход неверен.Делать в то время как wont цикл с булевым тестом C#
private static void InputMangementShapeSquare()
{
bool correctInput = true;
int Length = 0;
string rawInput;
do
{
correctInput = true;
Console.WriteLine("Enter the Length: ");
rawInput = Console.ReadLine();
try
{
Length = Int32.Parse(rawInput);
if (Length > 0)
{
correctInput = false; //Changes correctInput to false if input is less than zero
}
}
catch (Exception exception)
{
correctInput = false; //Changes correctInput flag to false when rawinput failed to be converted to integer.
Console.WriteLine("input must be an interger greater than zero.");
}
} while (correctInput == false);
Square square = new Square(Length);
}
только видел это ...: / – DigitalDulphin