For循环计算出粉刷一个房间要买多少油漆

For loop to figure out how much paint to buy to paint a room

这些是我在制作程序时得到的说明: 编写一个程序,计算用于一个房间的油漆桶数和最佳油漆罐数 购买。 你需要问清楚房间的高度和房间的长宽。房间是长方形的。你必须 粉刷墙壁和天花板,但不要粉刷地板。没有 windows 或天窗。您可以购买以下物品 大小的油漆桶。 • 5 升桶每个售价 15 美元,占地 1500 平方英尺。 • 1 升桶售价 4 美元,占地 300 平方英尺。

我已经编写了大部分代码,我只需要帮助确定使用 for 循环购买多少桶。 这是我的程序:

public class BrandonLatimerS5L1TryItSolveIt7 {
public static void main(String[] args){
    //declares variables
    double length;
    double width;
    double height;
    double ceilingArea;
    double wallsArea;

    //initializes bucket variables
    int fiveLiterBucket = 1500;
    int oneLiterBucket = 300;

    //Prompts user and gets input for length
    Scanner input = new Scanner(System.in);
    System.out.println("Please enter the length of the room in feet: ");
    length = input.nextDouble();

    //prompts user and gets input for width
    System.out.println("Please enter the width of the room in feet: ");
    width = input.nextDouble();

    //Prompts for input and gets input for height
    System.out.println("And lastly, please enter the height of the room in feet: ");
    height = input.nextDouble();

    //figures out the total area that needs to be painted
    ceilingArea = length * width;
    wallsArea = (2 * (width * height) + (2 * (length * height)));
    double totalArea = ceilingArea + wallsArea;

    //For loop to figure out how much paint will be needed.
    for(int numOfBuckets = 0; totalArea > 1; numOfBuckets++){
        totalArea = totalArea - (totalArea / 1500);
        System.out.println("You will need " + numOfBuckets + " buckets.");
        continue;

    /*
     * This program taught me to use the for loop. I just can't seem to figure out how to find the amount of paint I need to buy. 
    */
    }
}

非常感谢任何帮助!

for 循环不是这项工作的正确工具。当您的程序预先知道循环应该执行多少次时,使用for循环。如果你不知道,或者无法计算出循环体应该执行多少次,使用 while 循环,或者在这种情况下,只使用算术。

只需按顺序执行这些步骤,不要使用循环:

  • 将总面积除以1500,得出要买多少大桶油漆。
  • 将该数字乘以 1500 即可得出要覆盖的区域。
  • 从总面积中减去该面积即可得出剩余的空墙面积 space。
  • 将左边的翻墙 space 除以 300 得到要买多少个小桶。[​​=22=]
  • 使用与上述相同的方法来决定是否需要一个额外的小桶来放置任何剩余的空白墙space。