Math 与…有关的错误。。。运算符优先级??(.Net精简框架)

Math 与…有关的错误。。。运算符优先级??(.Net精简框架),math,compact-framework,Math,Compact Framework,我有这个手术: t = (x - (y * (z + w)) - w) / 2; 其中: x=268; y=4; z=20; w=30 据我所知,结果是49分,但我得到19分 我的错误在哪里?(在.Net Compact Framework 2.0 SP2 WinForm应用程序上使用此代码) 谢谢。你应该得到19 t = (x - (y * (z + w)) - w) / 2; t = (268 - (4 * (20 + 30)) - 30) / 2; t = (268 - (4 * (

我有这个手术:

t = (x - (y * (z + w)) - w) / 2;
其中:

x=268; y=4; z=20; w=30

据我所知,结果是49分,但我得到19分

我的错误在哪里?(在.Net Compact Framework 2.0 SP2 WinForm应用程序上使用此代码)

谢谢。

你应该得到19

t = (x - (y * (z + w)) - w) / 2;
t = (268 - (4 * (20 + 30)) - 30) / 2;  
t = (268 - (4 * (50)) - 30) / 2;  
t = (268 - (200) - 30) / 2;  
t = (68 - 30) / 2;  
t = (38) / 2;  
t = 19;  
我怀疑您的错误在这一步:

t = (268 - (200) - 30) / 2;
如果你在头脑中做了200-30次,你会得到170次。然后是268-170=98和98/2=49。 因为你有-200和-30,你需要把它们组合成-230而不是-170。

你应该得到19

t = (x - (y * (z + w)) - w) / 2;
t = (268 - (4 * (20 + 30)) - 30) / 2;  
t = (268 - (4 * (50)) - 30) / 2;  
t = (268 - (200) - 30) / 2;  
t = (68 - 30) / 2;  
t = (38) / 2;  
t = 19;  
我怀疑您的错误在这一步:

t = (268 - (200) - 30) / 2;
如果你在头脑中做了200-30次,你会得到170次。然后是268-170=98和98/2=49。 因为有-200和-30,所以需要将它们组合到-230而不是-170。

t=(268-(200)-30)/2
t=38/2
t=19

19是正确的。

t=(268-(200)-30)/2
t=38/2
t=19


19是正确的。

再次检查您的数学-要么您在计算中出错,要么您对运算符优先级的理解不正确。

再次检查您的数学-要么您在计算中出错,要么您对运算符优先级的理解不正确。

您可能想要

 t = (x -(y * (z+w) - w))/2
这是你可能想要的49

 t = (x -(y * (z+w) - w))/2
这是49

试试看

t = (x - ((y * (z + w)) - w)) / 2;
试一试


你怎么计算49?19是正确的值…这就是我想要的:t=(x-(y*(z+w)-w))/2;你把括号放在了不必要的地方..你怎么看49?19是正确的值…这就是我想要的:t=(x-(y*(z+w)-w))/2;你把括号放在了不必要的地方。别客气,我喜欢你去掉不必要的括号。别客气,我喜欢你去掉不必要的括号。