2012-04-03 139 views
3

任何人都可以请帮忙。 我正在关注发现here的教程,因为我有一种情况,必须以点斜率形式获得线的方程式,即y−y1=m(x−x1)将分数转换为浮点数C#

我起床到教程的第3步没有问题,但后来我卡住了。为了从这个等式y−3=**3/11**(x−4)到这个11y−33=3(x−4)(摆脱右边的分数),我必须在两边乘以11。

但是,我的问题是,我显然不会使用分数,但在C#中浮点十进制数。所以我的价值将是0.272727,而不是3/11。那么,我需要在双方中乘以什么才能给我正确的答案?或者甚至可以这样做?

我的问题是这个,我怎么能从这个y−3=**0.272727**(x−4)11y−33=3(x−4)十进制形式?

有没有人有任何建议或替代品,我可以使用?

在此先感谢

+1

写'3.0/11'而不是3,整个表达式变成浮点数。那么你可以做任何事情。 – Oliver 2012-04-03 13:01:16

+0

我仍然不知道这是如何解决我的问题,因为我只有十进制数字开头(教程页面和公式纯粹是为了参考,而不是我使用的实际值)。即使我将它转换成像3.0/11这样的小数点,我仍然回到方块1.然后我如何摆脱小数?也许我不完全理解说明 – heyred 2012-04-03 13:18:48

回答

0

首先, 试图运行,它计算的公式,你应该发现其价值有分母有子,或wathever表达之前的表达式的结果否则,在此之后,乘以你的等式,然后尝试计算它。 或者,另一种方法是使用The class FRACTION

1

Fraction Class

您实际上可以使用在C# 馏分使用它,您避免舍入的偏差。

1

我想你错误的计算公式解决步骤。 您需要首先将您的方程式解算为您实际可以计算的某种形式。正常的编程语言(不适用于Mathematic等)不能处理符号计算或未知数。 他们只能计算给定的所有变量conrete值使用

+0

“正常的编程语言”HM什么是正常的? 你有足够的API来处理符号计算和未知数。 例如:[Wolframalpha API](http://products.wolframalpha.com/developers/) – 2012-04-03 13:12:45

+0

对不起,也许我说错了。但我确实意识到,在计算值之前,我必须首先求解方程。我知道如何做计算,我有方程解决,但解决方程已经抛出了这个问题对我来说 – heyred 2012-04-03 13:35:14

+0

是的,但是当试图解决一些方程式在程序中反复使用它是不切实际的时间。如果您需要预先计算出方程式,则不能使用静态编译的代码进行计算。 仍然使用Wolfram Alpha可能是一个好主意首先解决它然后使用它,虽然手工做它可能是一个很好的练习 – 2012-04-03 13:35:43