現在、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);
}
}
}
コードの最初の部分は、バスケットに商品を追加して価格を個別に表示するという点で正しく機能しますが、2 番目の部分で問題が発生し、バスケットの価格を一緒に追加します。出力でわかるように http://gyazo.com/1656eecc689b7a9d0bfc47b8480169a6(ここでC#からの出力を表示する方法がわからないため、出力のスクリーンキャップをリンクする必要があります)最初のアイテムと2番目のアイテムの合計を表示し、2つの結果を正しく追加しますが、 2 番目のアイテムのコストを 2 倍して表示する理由がわかりません。最後に、コードの下部にあるように、VAT を取得して一括割引を表示する正しい方法であると思われる方法を書きましたが、上記のリンクから、2 つのアイテムを使用すると、コードは計算も表示もされません。 VAT または一括割引は、バスケットに 1 つのアイテムがある場合でも適用されます。こちらを参照してください > (* リンク番号 1 以下はここに移動します *) . 繰り返しになりますが、コードの他の部分が正しく機能しない原因となるエラーであると私は想像していますが、
私が言ったように、私はこれに不慣れで、C#がまったく得意ではありませんが、助けがあれば大歓迎です。何か必要な場合は、お尋ねください。ありがとう
編集* : 2 つ以上のリンクを投稿するには 10 の評判が必要であることに気付きました。以下のコメントで 2 つの不足しているリンクをリンクします。