C# 我无法将最终答案转换成十进制形式 我无法以小数形式显示最终输出 当我试图将双精度转换为十进制时,它给出了一个错误

C# 我无法将最终答案转换成十进制形式 我无法以小数形式显示最终输出 当我试图将双精度转换为十进制时,它给出了一个错误,c#,C#,如果要转换为十进制,可以使用该方法 如果希望最多保留1位小数,请使用.ToString(“0.0”) 我得到了预期的结果 如何降低最终答案位置值的新问题 输出 那有什么问题?您遇到了什么错误?程序执行后:实际输出:23450和预期输出:234.50,因此我不知道如何将最终答案转换为十进制形式,除非您的代码中有部分没有显示,我认为\u a和\u b变量在\u simpleintrest计算中使用时总是0,导致后者也是0,这意味着您的结果将等于\u amount*\u month。您在什么地方调用过


如果要转换为
十进制
,可以使用该方法

如果希望最多保留1位小数,请使用.ToString(“0.0”)

  • 我得到了预期的结果
  • 如何降低最终答案位置值的新问题
  • 输出


    那有什么问题?您遇到了什么错误?程序执行后:实际输出:23450和预期输出:234.50,因此我不知道如何将最终答案转换为十进制形式,除非您的代码中有部分没有显示,我认为
    \u a
    \u b
    变量在
    \u simpleintrest
    计算中使用时总是
    0
    ,导致后者也是
    0
    ,这意味着您的结果将等于
    \u amount*\u month
    。您在什么地方调用过这种计算方法吗?价值观是什么?请向我们提供预期的输入/输出。我认为OP希望以小数显示结果,而不是希望将其转换为类型为
    decimal
    的值。如果您将格式字符串转换为
    decimal
    @HansKesting,格式字符串仍然无效:非常抱歉,我犯了一个错误。您可以将格式字符串包含在占位符中:
    Console.WriteLine(“金额为:{0:0.00}”,金额为)@Vera:我通常更喜欢ToString方式,因为我从一开始就一直在这么做。
    
         using System;
         namespace Recurring_Deposit_Calc
        {
        class Program
        {
            private double _amount, _month,_a;
            private double _b,_simpleintrest,_matureAmount,_x;
            public void Calulate() {
            Console.WriteLine("Intrest Rate :6.8%");
            Console.WriteLine("Enter amount you deposit per month:");
            _amount = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Enter months:");
           _month = Convert.ToInt32(Console.ReadLine());
    
            //Calculting Simple Intrest
            _simpleintrest = _amount * _month*_a/ 2 * 12*_b;
            _a = _month + 1;
            _b = 7.65/100;
    
            //Calculating Maturity Amount
            _x = _amount * _month;
            _matureAmount = _x + _simpleintrest;
            Console.WriteLine("Amount is :{0}",_matureAmount);
          }
        }
    
        Console.WriteLine("Amount is :{0}",_matureAmount.ToString("0.00"));
    
            private double p, r = 6.8, i, totalDeposit, maturityAmount;
            private int n;
            public static void Main(string[] args){
                 Console.WriteLine("Interest Rate :6.8%");
                Console.WriteLine("Please enter per month deposit amount:");
                p = Convert.ToDouble(Console.ReadLine());
                Console.WriteLine("Enter months:");
                n = Convert.ToInt32(Console.ReadLine());
                //recurring deposit simple interest formula
                //i=p*(n(n+1)/2*12)*r/100
                i = p * (n * (n + 1) * r / 2400);
                totalDeposit = p * n;
                maturityAmount = totalDeposit + i;
                Console.WriteLine("Amount of maturity = " +
                    "Totoal money deposited+Interest:{0}+{1}={2}", totalDeposit, i, maturityAmount);
            }
    
    ******Recurring Deposit Calculator******
    Interest Rate :6.8%
    Please enter per month deposit amount:
    4567
    Enter months:
     7
    Amount of maturity = Totoal money 
    deposited+Interest:31969+724.6306666666667=32693.630666666668