% 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 中做到这一点。
::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
数学函数。