编程数学计算的最佳实践是什么?
What would be a best practice to program mathematical calculations?
我正在编写一些财务软件,需要编写不太复杂的数学公式。
编写代码后,它不再可读 - 即 - 您无法轻易辨别原始公式是什么。
编写数学公式以便以后轻松阅读的好方法是什么?
例如,编程计算固定利率的贷款:
(TotalValue*monthlyInterest*Math.pow((1+monthlyInterest),totalPayments))/(Math.pow((1+monthlyInterest),totalPayments) - 1)
虽然使用有意义的变量,但公式不可读。但是,如果您在页面上查看以经典数学符号编写的这个公式 - 您将很容易知道发生了什么(真正的基础数学)。
你怎么会把这个公式写成可读的方式。
澄清
我不是在谈论任何特定的语言。这对于任何高级语言都应该是一样的。
该示例使用 Javascript.
据我所知,无法将 Excel 公式转换为方程式
但为了清楚起见,您可以在公式编辑器中重新创建公式并将其放在单元格旁边。这样一来,你在做什么就很明显了。
另一种方法是创建数学方程式并添加宏。这样您就可以在 VBA.
中计算您的值
您还可以添加作为长名称缩写的局部变量。由于它们是本地的,因此它们的定义将位于公式之上。这可能看起来像
TV = TotalValue;
mi = monthlyInterest;
N = totalPayments;
MR = ( TV*mi*Math.pow( 1+mi, N ) ) / ( Math.pow( 1+mi, N ) - 1)
MonthlyRate = MR;
然后您会发现可以将公式简化为
MR = (TV*mi) / ( 1 - Math.pow( 1+mi , -N) - 1)
我正在编写一些财务软件,需要编写不太复杂的数学公式。
编写代码后,它不再可读 - 即 - 您无法轻易辨别原始公式是什么。
编写数学公式以便以后轻松阅读的好方法是什么?
例如,编程计算固定利率的贷款:
(TotalValue*monthlyInterest*Math.pow((1+monthlyInterest),totalPayments))/(Math.pow((1+monthlyInterest),totalPayments) - 1)
虽然使用有意义的变量,但公式不可读。但是,如果您在页面上查看以经典数学符号编写的这个公式 - 您将很容易知道发生了什么(真正的基础数学)。
你怎么会把这个公式写成可读的方式。
澄清
我不是在谈论任何特定的语言。这对于任何高级语言都应该是一样的。 该示例使用 Javascript.
据我所知,无法将 Excel 公式转换为方程式
但为了清楚起见,您可以在公式编辑器中重新创建公式并将其放在单元格旁边。这样一来,你在做什么就很明显了。
另一种方法是创建数学方程式并添加宏。这样您就可以在 VBA.
您还可以添加作为长名称缩写的局部变量。由于它们是本地的,因此它们的定义将位于公式之上。这可能看起来像
TV = TotalValue;
mi = monthlyInterest;
N = totalPayments;
MR = ( TV*mi*Math.pow( 1+mi, N ) ) / ( Math.pow( 1+mi, N ) - 1)
MonthlyRate = MR;
然后您会发现可以将公式简化为
MR = (TV*mi) / ( 1 - Math.pow( 1+mi , -N) - 1)