这可能是错误的方法,但我试图从一个数组中调用一个特定的数字,这个数字会根据" if"声明被使用了。例如
if (diameter >= constDiameter[0] && diameter < constDiameter[1])
{
areaOfTheSlice = areaOfThePizza / constNumberOfSlices[0];
}
else if (diameter >= constDiameter[1] && diameter < constDiameter[2])
{
areaOfTheSlice = areaOfThePizza / constNumberOfSlices[1];
}
else if (diameter >= constDiameter[2] && diameter < constDiameter[3])
{
areaOfTheSlice = areaOfThePizza / constNumberOfSlices[2];
}
Console.WriteLine("A " + diameter + "\" pizza will yield {0} slices", constNumberOfSlices);
对于&#34; constNumberOfSlices我希望它打印在If语句中实际使用的任何数字。 提前谢谢。
答案 0 :(得分:1)
您必须创建一个容器来存储披萨的切片数量。如果这有意义,请告诉我们!
int constNumberOfSlices;
if (diameter >= constDiameter[0] && diameter < constDiameter[1])
{
constNumberOfSlices = constNumberOfSlices[0];
areaOfTheSlice = areaOfThePizza / constNumberOfSlices[0];
}
else if (diameter >= constDiameter[1] && diameter < constDiameter[2])
{
constNumberOfSlices = constNumberOfSlices[1];
areaOfTheSlice = areaOfThePizza / constNumberOfSlices[1];
}
else if (diameter >= constDiameter[2] && diameter < constDiameter[3])
{
constNumberOfSlices = constNumberOfSlices[2];
areaOfTheSlice = areaOfThePizza / constNumberOfSlices[2];
}
Console.WriteLine("A " + diameter + "\" pizza will yield {0} slices", constNumberOfSlices);
答案 1 :(得分:1)
正如其他人所说,你必须在找到它时保存它。
此外,您还可以利用此方案中的for循环。
int slices = 0;
for(int i = 0; i < 3; i++)
{
if (diameter >= constDiameter[i] && diameter < constDiameter[i + 1])
{
areaOfTheSlice = areaOfThePizza / constNumberOfSlices[i];
slices = i;
break;
}
}
答案 2 :(得分:0)
您可以在if/else
块中打印您正在使用的号码。但是,既然你总是做同样的计算,你可能想要存储切片的数量,然后计算面积,如下所示:
int numberOfSlices;
if (diameter >= constDiameter[0] && diameter < constDiameter[1])
{
numberOfSlices = constNumberOfSlices[0];
}
else if (diameter >= constDiameter[1] && diameter < constDiameter[2])
{
numberOfSlices = constNumberOfSlices[1];
}
else if (diameter >= constDiameter[2] && diameter < constDiameter[3])
{
numberOfSlices = constNumberOfSlices[2];
}
else
{
// Put default value for number of slices here.
}
areaOfTheSlice = areaOfThePizza / numberOfSlices;
Console.WriteLine("A " + diameter + "\" pizza will yield {0} slices", numberOfSlices);
请注意,如果if
块中没有条件为真,则必须找到切片数的默认值。