我目前正在用 C# 编写 Shop 程序的代码。我对 C# 比较陌生,我很难让数学在以下代码中起作用:
//Add Basket
public void addBasket()
{
//Add up the total of individual items
double total = 0;
if (shoppingCart.Count() == 0)
{
Console.WriteLine("ERROR - Basket is Empty");
}
else
{
foreach (Products tmp in shoppingCart)
{
total = (tmp.Price * tmp.BoughtStock);
Console.WriteLine("The cost of the individual item is: " + "\t" +total);
}
}
//Calculate the products together
double itemTotal = 0;
if (shoppingCart.Count() == 0)
{
Console.WriteLine("ERROR - Basket is Empty");
}
else
{
foreach (Products tmp in shoppingCart)
{
itemTotal = (tmp.Price * tmp.BoughtStock);
itemTotal = itemTotal + total;
Console.WriteLine("The cost of the items together is: \t" +itemTotal);
}
//Calculate VAT
double vatPrice = total * .21;
double netPriceBeforeDiscount = total + vatPrice;
//calculate discount: if total cost of shop is over 25 give 10% discount.
if (netPriceBeforeDiscount >= 25)
{
double reducedPrice = netPriceBeforeDiscount * .10;
double netPrice = netPriceBeforeDiscount - reducedPrice;
reducedPrice = Math.Round(reducedPrice, 2);
netPrice = Math.Round(netPrice, 2);
Console.WriteLine("Discount*:\t\t\t\t " + reducedPrice);
Console.WriteLine("\nTotal Net Cost (including VAT and discounts):\t Euro " + netPrice);
}
else
{
double netPrice = Math.Round(netPriceBeforeDiscount, 2);
}
}
}
代码的第一部分工作正常,因为它在篮子中添加任何产品并单独显示价格,问题出现在第二部分,将篮子中的项目价格添加在一起。正如您在输出中看到的那样 http://gyazo.com/1656eecc689b7a9d0bfc47b8480169a6(我必须链接输出的屏幕截图,因为我不知道如何在此处显示 C# 的输出)它显示第一项、第二项的总和,然后正确地将它们两个结果加在一起,尽管我没有不知道为什么它显示第二个项目的成本乘以 2。最后,正如您在代码底部看到的那样,我已经编写了我认为是获取增值税和显示批量折扣的正确方法,但是从上面的链接中,当我使用两个项目时,代码将不会计算或显示增值税或批量折扣尚未在购物篮中有一件商品,请参见此处 >(* 链接编号 1 位于此处 *)。尽管如此,从我的想象来看,错误导致代码的其他部分无法正常工作,
正如我所说,虽然我是新手,而且在 C# 方面并不十分出色,但任何帮助都将不胜感激,如果您需要我的任何帮助,请询问,谢谢
编辑*:刚刚意识到我需要 10 个声望才能发布两个以上的链接,我在下面的评论中链接了 2 个缺失的链接。