TCL中有没有可以用于浮点取模的函数?

问题描述 投票:0回答:1
% set a 10.0
10.0
% set b 3.0
3.0
% puts "[expr {$a % $b}]"
can't use floating-point value as operand of "%"

我收到上述错误,有没有办法在 tcl 中做到这一点。

math tcl
1个回答
0
投票

您可以在

::tcl::mathfunc
命名空间中创建一个过程:

proc ::tcl::mathfunc::fmod {numerator denominator} {
    return [expr {$numerator - int($numerator / $denominator) * $denominator}]
}

set a 10.0
set b 3.0
puts "[expr {fmod($a, $b)}]"   ;# => 1.0

或者,只需使用 内置

fmod
数学函数

© www.soinside.com 2019 - 2024. All rights reserved.