由于某种原因,这部分对我来说很难。其他一切都运行得很好,但我似乎无法弄明白如何输入它重新询问输入是否为> = 2 ...
if (minimumSides >= 2)
我得到了这个部分,但它讨厌minimumsides >= 2.
do
{
Console.Write("Enter minimum number of sides >2: ");
int.TryParse(inputminside, out minimumSides);
if (minimumSides >= 2)
Console.Write("Enter minimum number of sides >2: ");
else
inputminside = Console.ReadLine();
}
while (!int.TryParse(inputminside, out minimumSides));
答案 0 :(得分:3)
你快到了:
do {
Console.Write("Enter minimum number of sides >2: ");
inputminside = Console.ReadLine();
} while (!int.TryParse(inputminside, out minimumSides) || minimumSides < 2);
答案 1 :(得分:0)
问题可能是在循环的第一次迭代中“inputminside”尚未初始化?
答案 2 :(得分:0)
这是你可以做到的一种方式:
var minimumSides = 0;
while (minimumSides <=2)
{
Console.Write("Enter minimum number of sides >2: ");
int.TryParse(Console.ReadLine(), out minimumSides);
}
// carry on with your code here...
答案 3 :(得分:0)
这就是你想要的 -
do
{
Console.Write("Enter minimum number of sides >2: ");
inputminside = Console.ReadLine();
}
while (!int.TryParse(inputminside, out minimumSides) && minimumSides < 2);