拆分数字的单位基数和分隔余数
Splitting units base of a number and separating remainders
我正在尝试拆分多个基数,然后将两个数字分开以获得不同的输出。 (请记住我刚刚编辑过,我的答案就是解决方案)。留在这里,方便有类似问题的人找到解决办法。谢谢大家!
这就是想法:
如果数字 >= 10 && 以 10 为基数
然后给我 10 件的折扣价
如果数字 <= 0 && 不是基数 10
然后为其中包含 10 个单位的数字加上没有折扣的剩余部分的折扣(为了数字简单起见,假设为 100%)
所以做一个实际的例子
如果我订购 25 件 x(每件 1 美元)和 15 件(每件 1 美元)y,价格将为:
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 个单元
谢谢大家!
希望我没听错。我了解到您想计算包含两个元素的总价:非折扣商品的价格和打折商品的价格。
// 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);
尤里卡!
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,它将左侧整数或双除以右侧(来自用户的左侧输入)
当我把那个变量减去原来的变量时,会给我余数!
同样,这一小步花了我一晚上的时间才弄明白,确实很简单。这是针对 class 的,如果你在那个 class 中并且你正在阅读(即使你可能需要挖掘一点才能找到这个作业是什么),我只想告诉你你这就是编程的乐趣所在!我不是在讽刺我真的很喜欢这类问题!
签名:
那个外国小伙;
又是尤里卡!
尽情享受吧!
我正在尝试拆分多个基数,然后将两个数字分开以获得不同的输出。 (请记住我刚刚编辑过,我的答案就是解决方案)。留在这里,方便有类似问题的人找到解决办法。谢谢大家!
这就是想法:
如果数字 >= 10 && 以 10 为基数
然后给我 10 件的折扣价
如果数字 <= 0 && 不是基数 10
然后为其中包含 10 个单位的数字加上没有折扣的剩余部分的折扣(为了数字简单起见,假设为 100%)
所以做一个实际的例子 如果我订购 25 件 x(每件 1 美元)和 15 件(每件 1 美元)y,价格将为:
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 个单元
谢谢大家!
希望我没听错。我了解到您想计算包含两个元素的总价:非折扣商品的价格和打折商品的价格。
// 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);
尤里卡!
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,它将左侧整数或双除以右侧(来自用户的左侧输入)
当我把那个变量减去原来的变量时,会给我余数!
同样,这一小步花了我一晚上的时间才弄明白,确实很简单。这是针对 class 的,如果你在那个 class 中并且你正在阅读(即使你可能需要挖掘一点才能找到这个作业是什么),我只想告诉你你这就是编程的乐趣所在!我不是在讽刺我真的很喜欢这类问题!
签名:
那个外国小伙;
又是尤里卡!
尽情享受吧!