【发布时间】:2019-03-23 21:55:32
【问题描述】:
我正在设置商店计划。下面的代码是一种方法。该代码包括建立商店和实际使用商店。在这种方法中,我试图根据用户购买的商品数量来计算用户获得的折扣。
当用户开设商店时,他们可以设置 x 数量的商品来获得折扣。
例如,如果用户购买了 20 件商品,并且符合折扣条件的商品数量 x 设置为 6 包。用户将从原始价格中减去(2 * 商品价格)折扣。
每 6 包用户免费获得 1 包,最多 20 包。
6 包 + 1 包免费 + 6 包 + 1 包免费 + 6 包 = 20 包。
我尝试创建循环,例如在模数为 0 时计算价值时减去用户想要购买的商品数量,并从用户购买的金额中减去,但我离它还很远。
数组来自其他方法:
price[i] 是商品的价格
buyItems[i] 是用户购买的商品数量
packs[i]是用户选择的折扣,例如用户可以设置
折扣适用于 2 包、3 包或什至没有。
public static void checkOuts(String [] names, double [] price,double [] packs,double addDiscount[], double[] buyItems, double[]addDiscountrate, int k ){
double orgSub=0;
double newSub=0;
double addPercent=0;
double specDis =0;
double freePack=0;
double disCheck =0;
double count=0;
for (int i =0; i < k; i++ ) {
orgSub+=price[i]*buyItems[i];
}
System.out.println("Original Subtotal: $" + orgSub);
for (int i =0; i < k; i++ ) {
orgSub+=price[i]*buyItems[i];
}
System.out.println("Original Subtotal: $" + orgSub);
for (int j = 0; j < buyItems.length; j++) {
disCheck = buyItems[j];
for(int d =0; d < buyItems.length; d++) {
freePack = packs[d];
for (int s =1; s < disCheck; s++)
if (s % freePack==0) {
count++;
disCheck = disCheck -1;
System.out.println(disCheck);
}
}
specDis+= count*price[j];
// the final discount that will be subtracted from original
}
【问题讨论】:
-
我已经更新了我的问题。