我目前正在制作一个税收程序(学习项目),它可以读取CSV文件并生成人员和账户余额列表。我需要从一个文本框中向下舍入2个小数位,并在另一个文本框中将它们相加。我的代码附在下面,告诉我不能使用“*”,那么如何用0.1乘以一个小数?如果我做错了,请让我知道,谢谢!
public partial class Form1 : Form
{
//CSV ARRAY LISTS
List<string> fullName = new List<string>();
List<string> accBalance = new List<string>();
int currentItem;
int index;
int counter = 0;
decimal interestBalance = 0;
decimal result;
decimal interestRemainder = 0;
double round = 0.1;
private void interestBalanceBox_TextChanged(object sender, EventArgs e)
{
interestRemainder = decimal.Parse(interestBalanceBox.Text);
interestRemainder = Math.Truncate(0.1 * interestRemainder) / 100;
interestRemainderBox.Text = interestRemainder.ToString();
}
我们需要代表的程序是这个!非常感谢您的帮助。
decimal
数学或double
数学。decimal * decimal => decimal
是明确定义的,就像double * double => double
一样。因此,当您决定要使用哪种类型时:强制转换为正确的类型并使用它。通常涉及财务的任何事情都是decimal
。如果问题只是0.1
,则可以通过乘以0.1M
或仅除以10
来解决。 - Marc Gravell