-3
import java.io.*;
import java.util.*;

public class volumeConeD

{//class
    public static void main (String [] args)
    {//main

        Scanner keyBoard = new Scanner(System.in);//input for keyBoard
        //variables
        double volume;
        double radius;
        double hieght;
        double pie = 3.14;
        double yes = 1.0;
        boolean volumeTwo = true;


        while(volumeTwo == 0){
            System.out.print("Volume of a Cone... V=1/3(3.14)r^2(h)");
            System.out.println ();
            System.out.println ();

            radius = getRadius(radius); //call to method
            System.out.print("Enter a Height      ");
            hieght = keyBoard.nextDouble ();
            //math
            volume = .33333 * pie * radius * radius * hieght;
            System.out.printf ("Volume =       " + volume);

        }//end of while         
    }//end of main
    public static double getRadius (double radius)
    {
        Scanner keyBoard = new Scanner(System.in);

        System.out.print("Enter Radius Squared Number      "); 
        radius = keyBoard.nextDouble ();
        return radius;
    }
}//end of program

だからここに私の問題があります。答えが Volume = 0 になったらプログラムを終了しなければならないように、これを書かなければなりません。while ループとそのメソッドを使用して半径を入力する必要があります。このエラーが発生し続けますが、その理由がわかりません。

               error
                       volumeConeD.java:25: error: incomparable types: boolean and int
while(volumeTwo == 0){
                ^
1 error.

エラーの意味は理解できますが、修正方法がわかりません。新しい編集を手伝ってください...また、読む必要があるwhileループでも、while(Volume == 0)。

4

4 に答える 4

1

の間継続させたい場合や、のwhile(volumeTwo)間継続させたい場合に使用します。volumeTwotruewhile(!volumeTwo)volumeTwofalse

于 2013-09-14T17:48:36.960 に答える
0

と比較してみるboolean0、うーん

boolean volumeTwo = true;
while(volumeTwo == 0)

使用する

 while(volumeTwo == true)

また

while(volumeTwo)  
于 2013-09-14T17:48:01.073 に答える
-1

以下はあなたが達成しようとしていることだと思います。<======= でマークされたコメントを参照してください。

    ... 
    //boolean volumeTwo = true; // <======= Manoj - COMMENT THIS LINE  
    double volumeTwo = 1.0; // <=========== Manoj - any non-zero for that matter
    ... 

    ... 
    while(volumeTwo != 0.0){
    ... 
              //math
      volume = .33333 * pie * radius * radius * hieght;
      System.out.printf ("Volume =       " + volume);
      volumeTwo = volume; // <=============== Manoj - update volumeTwo with calculated volume 
                          // <===============       - when volumeTwo becomes 0.0 loop quits 
于 2013-09-14T17:57:33.070 に答える