热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

除以两个小数点后,C#中的输出不正确

我有一个程序,将一个变量与另一个变量相除。但是我得到的答案是不正确的

我有一个程序,将一个变量与另一个变量相除。
但是我得到的答案是不正确的!
请检查以下图片:

除以两个小数点后,C#中的输出不正确

下面的代码:

iter_defects++;
df1[iter_defects].blob_id = b.Id;
decimal cOnvertX= Convert.ToDecimal(txtmmtopixX.Text);
decimal cOnvertY= Convert.ToDecimal(txtmmtopixY.Text);
df1[iter_defects].count = iter_defects;
df1[iter_defects].cog_X = Math.Round( Convert.ToDecimal( b.Centroid.X)) / convertX;
df1[iter_defects].cog_Y = Math.Round(Convert.ToDecimal(b.Centroid.Y ))/ convertY;
if (df1[iter_defects].cog_X > 10 && df1[iter_defects].cog_X <30)
{
if (df1[iter_defects].BY > 1 && df1[iter_defects].BY <74)
{
df1[iter_defects].cog_X = df1[iter_defects].cog_X - 20;
}
if (df1[iter_defects].BY > 64 && df1[iter_defects].BY <129)
{
df1[iter_defects].cog_X = df1[iter_defects].cog_X - 20;
}
if (df1[iter_defects].BY > 118 && df1[iter_defects].BY <183)
{
df1[iter_defects].cog_X = df1[iter_defects].cog_X - 20;
}
}

b.centroid.X和b.centroid.Y默认情况下是双精度的,因此我会将其转换为十进制。

如果我将147除以9.3,我应该得到大约16,但是我得到7.9!

我以前使用的是double而不是十进制,但是即使十进制也有相同的问题。将变量值固定在右边的图像上。

怎么了?

更新:

在我的嵌套if语句中,我基于少量条件进行了更多的算术运算。当我删除这些条件时,计算就很好了。现在更困惑了。下面的代码可以工作,但是如果没有这些条件,本节之后的代码将无法工作:

iter_defects++;
df1[iter_defects].blob_id = b.Id;
decimal cOnvertX= Convert.ToDecimal(txtmmtopixX.Text);
decimal cOnvertY= Convert.ToDecimal(txtmmtopixY.Text);
df1[iter_defects].count = iter_defects;
df1[iter_defects].cog_X = Math.Round( Convert.ToDecimal( b.Centroid.X)) / convertX;
df1[iter_defects].cog_Y = Math.Round(Convert.ToDecimal(b.Centroid.Y ))/ convertY;
if (df1[iter_defects].cog_X > 10 && df1[iter_defects].cog_X <30)
{
df1[iter_defects].cog_X = df1[iter_defects].cog_X - 20;
}



尚不清楚您的程序如何工作,但我认为问题可能是因为您处于某种循环中,并且当您检查结果时,已经发生了多次迭代和基值(例如cog_X)已更改,因此您的比较数学将不匹配。


推荐阅读
author-avatar
mobiledu2502862777
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有