【发布时间】:2017-11-05 12:48:02
【问题描述】:
我有一个带有“终身”属性的简单“投资”类型:
type Investment = {
PurchasePayment: float;
Lifetime: float;
TaxWriteoff: float;
ResidualValue: float;
}
let CoffeMachine = {
PurchasePayment = 13000.0;
Lifetime = 4.0;
TaxWriteoff = 2000.0;
ResidualValue = 500.0;
}
我想迭代多年的投资并为每一年进行一些计算:
for i = 1 to int CoffeMachine.Lifetime do
printf "%i" i
// doSomething
有没有办法避免使用 for 循环并以更实用的风格编写它?
干杯,
沃伊泰克
【问题讨论】:
-
这取决于 Lifetime 将如何在生产代码中生成,但使用
int函数可能不是一个好主意。从数据库计算或检索,或其他意外,可能会导致 3.9... 而不是 4.0,然后在使用int后,您将有 3 年而不是 4 年。也许你应该改用round。
标签: .net f# functional-programming