gpt4 book ai didi

java - 为什么这个循环不确认前两个输入?

转载 作者:行者123 更新时间:2023-12-02 02:50:49 24 4
gpt4 key购买 nike

我正在编写一个主要方法,要求用户以圆锥体的半径长度和高度的形式输入,然后调用其他 3 个数学方法来确定圆锥体底部的面积,如下所示以及它的表面积和体积。

这个想法是,您应该能够输入多组输入,并通过输入“q”表示您已完成。示例输入可以是“10 5 6 8 7 5 q”。然后,程序应该使用两组半径和高度,将所有内容计算三次,然后中断循环。相反,它会忽略前两个输入并完美地执行其余四个输入。它基本上计算 n-1 组高度和半径,其中 n 是提供的组数。我非常感谢对此的帮助。

while(true)       //Infinite loop
{
if (scan.hasNextInt()) //If next input is an integer, read it
{
radie = scan.nextInt();
height = scan.nextInt();
}
else if (scan.next().equals('q'))
{ //If it instead if "q", break the loop

break;
}


do
{
if (scan.hasNextInt())
{
radie = scan.nextInt();
height = scan.nextInt();
}


System.out.print("r = "+radius);
System.out.println("h = "+height);
System.out.println("Bottom area: "+ area(radius));
System.out.println("Surface area: "+area(radie, height));
System.out.println("Volume: "+ volume(radius, height));

}while (scan.next() != "\n");
}

最佳答案

您首先读入两个整数。但是,这两个整数都不会在您的程序中使用。因此,它们被扔掉了。

要么消除第二个循环,然后向上移动输出。或者,您在第二个循环之前复制输出。

关于java - 为什么这个循环不确认前两个输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43856283/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com