如何计算十进制数? (C#)

时间:2017-10-11 08:40:35

标签: c# decimal

尝试使用小数计算时出现Sytem.FormatException错误。它适用于非小数的数字。 我需要添加/更改什么才能使用十进制数?

这是我的代码:

namespace Nikotin_Rechner

    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            private void buttonCalculate_Click(object sender, EventArgs e)
            {
                int val1 = Int32.Parse(AngabeGesamt.Text);
                int val2 = Int32.Parse(AngabeStärke.Text);

                int result = val1 / 20 * val2;
                labelBase.Text = result.ToString();
            }
        }

}

3 个答案:

答案 0 :(得分:2)

如果您想要浮点值,则必须将类型int更改为doublefloatdecimal):< / p>

private void buttonCalculate_Click(object sender, EventArgs e)
{
    double val1 = double.Parse(AngabeGesamt.Text);
    double val2 = double.Parse(AngabeStärke.Text);

    double result = val1 / 20 * val2;
    labelBase.Text = result.ToString();
}

答案 1 :(得分:0)

您需要使用其他类型而不是int,我建议您使用double。像这样:

private void buttonCalculate_Click(object sender, EventArgs e) 
{
    double val1 = double.Parse(AngabeGesamt.Text);
    double val2 = double.Parse(AngabeStärke.Text);

    double result = val1 / 20 * val2;
    labelBase.Text = result.ToString();
}

请在此处查看官方C#文档:https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/double

让我知道你是怎么过的!

答案 2 :(得分:0)

这段代码可以做到

        decimal val1 = decimal.Parse("9");
        decimal val2 = decimal.Parse("7");

        decimal result = (val1 / 20 )* val2;
        Console.Write(result);

结果为3.15

相关问题