拆分单元基数和分离余数

时间:2016-09-15 22:52:14

标签: java if-statement math base operation

我试图拆分一个基数,然后将两个数字分开以获得不同的输出。 (请记住我刚刚编辑过,我的答案就是解决方案)。这是留在这里,所以有类似问题的人可以找到解决方案。谢谢大家!

所以这就是这个想法:

如果数字> = 10&&基地10

然后给我10个单位的折扣价

如果数字< = 0&&不是基数10

然后为其中包含10个单位的数字添加折扣,其余没有折扣(假设数字为100%)

所以做一个实际的例子 如果我订购25个单位的x(每个1美元)和15个单位(每个1美元)的价格将是:

x 20个单位= $ 0 x 5个单位=总共5美元

y 10个单位= 0美元 y 5个单位=总共5美元

这有点棘手,这是我到目前为止所得到的:

double discountedmNI = (mNI - ((mNI/100)*10)) * mNIC;
double discountedmNIP = mNI - ((mNI/100)*10);

if(mNIC >= 10 && mNIC % 10 == 0){

    System.out.println("mNI " + discountedmNIP + " " + mNIC);
    System.out.println(discountedmNI);

}

else if (!mNIC % 10 == 0){

    System.out.println("mNI " + mNI + mNIC);
    System.out.println(mNI * mNIC);

}

我认为我没有将10个单位分开正确

谢谢大家!

2 个答案:

答案 0 :(得分:0)

我希望我理解你。我知道你想要计算一个由两个元素组成的总价格:非折扣商品的价格和折扣商品的价格。

// The following three values are just example assumptions.
float discountInPercent = 100.0f;
float itemsOrdered = 5004.0f;
float itemPriceNormal = 5.0f;

// Here the price for one discounted item gets calculated.
// Please remember that the discount is given in percentage.
float itemPriceDiscounted = itemPriceNormal * ((100.0f - discountInPercent) / 100.0f);

// Calculate the count of items that get discounted and those that 
// will get priced normally.
float itemsDiscounted = Math.floor(itemsOrdered / 10.0f);
float itemsNotDiscounted = itemsOrdered % 10;

// Finally calculate the two elements of the total price and sum it up. 
float priceDiscounted = (itemsDiscounted * itemPriceDiscounted);
float priceNormal = (itemsNotDiscounted * itemPriceNormal);
float totalPrice = priceDiscounted + priceNormal;

System.out.println("Price discounted: %.2f" + priceDiscounted);
System.out.println("Price non-discounted: %.2f" + priceNormal);
System.out.println("Price total: %.2f" + totalPrice);

答案 1 :(得分:0)

EUREKA!

    double discountedmNIP = mNI - ((mNI/100)*10);
    int mNIC2 = (mNIC % 10);
    double mNIC2disc = (mNI * mNIC2);
    double discountedmNI = (mNI - ((mNI/100)*10)) * (mNIC - mNIC2);


    if(mNIC >= 10){

        System.out.println(discountedmNIP + " " + (mNIC - mNIC2) + " " + discountedmNI );
        System.out.println(mNI + " " + mNIC2 + " " + mNIC2disc);

    }



    else{

        System.out.print(mNI + " " + mNIC);
        System.out.print(mNI * mNIC);


    }

    double sum = (mNI + discountedmNI + discountedRh + rH);

    System.out.println('\t');
    System.out.println("Total order cost " + sum);

我需要做的就是取单位%10,它将左侧整数除以右侧(左侧输入来自用户)

并且当我将该变量减去原始变量时,将给出余数!

再一次,这个小步骤花了整整一夜才弄明白,确实很简单。这是一个班级,如果你在那个班级并且正在阅读(即使你可能需要挖掘一点来找到这个任务的分配),我想告诉你这是编程的乐趣!我不是在讽刺我真的很喜欢这类问题!

签名:

那个外国人;

EUREKA再次!

享受!