Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java编程-帮助初始化(地毯式)_Java - Fatal编程技术网

Java编程-帮助初始化(地毯式)

Java编程-帮助初始化(地毯式),java,Java,我已经开始学习Java编程,在做一个辅助时遇到了一个问题: ps这是一个c编程任务,使用它进行java编程: 考虑一个(潜在的大型商业)房间,其地板尺寸为长度len和宽度wid。地板面积由len乘以wid得出 地毯砖作为单独的正方形(2英尺乘2英尺)提供。编写、编译并运行一个C程序,fummer.C -计算从终端输入尺寸(len和wid)(测量单位为英寸)的房间所需的最小地毯铺数。注意:地板砖可以切割成适合房间边缘的形状-尽量减少浪费 -计算需要多少地毯瓷砖包。供应商仅提供十块一包的地毯砖(即单

我已经开始学习Java编程,在做一个辅助时遇到了一个问题: ps这是一个c编程任务,使用它进行java编程:

考虑一个(潜在的大型商业)房间,其地板尺寸为长度len和宽度wid。地板面积由len乘以wid得出

地毯砖作为单独的正方形(2英尺乘2英尺)提供。编写、编译并运行一个C程序,fummer.C

-计算从终端输入尺寸(len和wid)(测量单位为英寸)的房间所需的最小地毯铺数。注意:地板砖可以切割成适合房间边缘的形状-尽量减少浪费

-计算需要多少地毯瓷砖包。供应商仅提供十块一包的地毯砖(即单个瓷砖不能单独购买)

-计算购买最小数量的包装后剩余的备用瓷砖数量

-将所有这些结果连同订单的总成本一起打印在一个整洁的表格中。(一包瓷砖前四包每包售价50美元,后续每包价格降至45美元。)

仔细考虑如何测试您的程序?这些计算非常繁琐,很容易出错。如果你的程序不起作用,那么你会浪费公司很多钱,你可能会失去提供软件的合同

你应该写一些测试用例(手工)来涵盖可能发生的所有不同的可能性。别忘了考虑各种边界情况——这些通常是检测错误的地方。

到目前为止,我已经做了:

import java.util.Scanner;

public class carpet {
    public static void main (String args[]){
    Scanner scanf = new Scanner (System.in);

        float len, wid;
        float area;

        int roundTiles;
        int roundPacks;

        float tarea;
        float tpack;
        float NoOfTiles;
        float NoOfPacks;
        float tspares1;
        float tspares2;
        int packCost;
        int cost;

        tarea= 12* 12;
        tpack= 10;

        System.out.format("Enter the length of the room, Inches: ");
        len = scanf.nextFloat();

        System.out.format("Enter the width of the room, Inches: ");
        wid = scanf.nextFloat();

        area = len * wid;

        NoOfTiles = area/ tarea;
        NoOfPacks = NoOfTiles/tpack;


        roundTiles = (int) Math.ceil(NoOfTiles);
        roundPacks = (int) Math.ceil(NoOfPacks);



        tspares1 = roundPacks * 10;
        tspares2 = tspares1 - roundTiles;

        if (roundPacks <= 4)
            packCost =50;
        else if(roundPacks > 4)
        {
            packCost = 45;
            packCost = packCost + 20;   *<<-----******LINE 50-----*********

        }


        cost =roundPacks * packCost; *<<*******---ERROR-------------*********

        System.out.println(cost);

        }

}
import java.util.Scanner;
公共级地毯{
公共静态void main(字符串参数[]){
Scanner scanf=新扫描仪(System.in);
浮动长度,宽度;
漂浮区;
圆形瓷砖;
int圆形包装;
浮跗;
浮动包装;
浮面;
浮面背包;
浮点数1;
浮动tspares2;
国际邮递公司;
国际成本;
跗骨=12*12;
t包装=10;
System.out.format(“输入房间的长度,英寸:”);
len=scanf.nextFloat();
System.out.format(“输入房间的宽度,英寸:”);
wid=scanf.nextFloat();
面积=长*宽;
NoOfTiles=面积/面积;
NoOfPacks=NoOfTiles/t包装;
roundTiles=(int)Math.ceil(NoOfTiles);
roundPacks=(int)Math.ceil(NoOfPacks);
tspares1=圆形包装*10;
tspares2=tspares1-圆形瓷砖;
if(圆形包装4)
{
packCost=45;

packCost=packCost+20;*您需要初始化
packetCost

int packCost = 0;

您需要初始化
packetCost

int packCost = 0;

您需要通过替换当前行来初始化变量packCost

int packCost;


您正在条件语句中初始化packCost变量,编译器没有足够的智能来检测它。

您需要通过替换当前行来初始化变量packCost

int packCost;


您正在条件语句中初始化packCost变量,而编译器没有足够的智能来检测它。

在Java中,需要初始化局部变量。如果这是字段变量,则它将具有隐式默认值0(零)

这里有一个链接解释了这一点:(免责声明:不是我的页面)

从本页:

  • 字段变量(类成员)自动初始化为默认值
  • 局部变量(方法或构造函数变量)不会自动初始化

在Java中,需要初始化局部变量。如果这是一个字段变量,它将具有隐式默认值0(零)

这里有一个链接解释了这一点:(免责声明:不是我的页面)

从本页:

  • 字段变量(类成员)自动初始化为默认值
  • 局部变量(方法或构造函数变量)不会自动初始化

使用else而不是else if可以让编译器清楚地知道将执行其中一个条件,因此packCost始终设置为:

if (roundPacks <= 4)
    packCost = 50;
else
{
    packCost = 45;
    packCost = packCost + 20;
}

if(roundPacks使用else而不是else-if向编译器表明将执行其中一个条件,因此packCost始终设置为:

if (roundPacks <= 4)
    packCost = 50;
else
{
    packCost = 45;
    packCost = packCost + 20;
}

if(roundPacks+1个好捕获,表示if/else if真的应该是if/else+1个好捕获,表示if/else if真的应该是if/else