string input = Console.ReadLine();
decimal sum = Convert.ToDecimal(input);
if (sum >= (decimal)500.01)
{
//40% and 8 dollars off shipping costs are taken off total amount
decimal totalprice;
totalprice = (sum - 8) * .60m;
Math.Truncate(totalprice);
Console.WriteLine("Your final cost is:${0:0.00}", totalprice);
Console.Read();
问题是,当我在程序中输入价格 598.88 美元时,我应该得到 354.52。
数学:
598.88 - 8 = 590.88. 590.88 * 60% = 354.528
我实际上是354.53
因为 C# 向上舍入而不是向下舍入。例如,
如果我得到这样的答案519.998
,我希望它留在519.99
。另一个例子,如果我得到一个930.755
我希望它保持在的答案930.75
。
我查看了一些答案,但Math.Truncate
显然对我不起作用,并且使用该*100 / 100
技巧也不起作用。请记住,我是一名新学生,因此,如果答案可以是菜鸟安全的,那就太好了。谢谢。