implement ev_precision into ev0 procedure (return result rounded to ev_precision digits or return 0 if expression can not be evaluated due to syntax errors or unresolved parameters)
This commit is contained in:
parent
8c47d3fc2c
commit
69337b2652
|
|
@ -668,7 +668,7 @@ proc to_eng {args} {
|
|||
}
|
||||
|
||||
proc = {args} {
|
||||
set r [ev7 $args]
|
||||
set r [ev $args]
|
||||
puts $r
|
||||
}
|
||||
|
||||
|
|
@ -699,9 +699,11 @@ proc ev {args} {
|
|||
|
||||
## evaluate expression. if expression has errors or does not evaluate return 0
|
||||
proc ev0 {args} {
|
||||
global ev_precision
|
||||
if {[info exists ev_precision]} {set pr $ev_precision} else {set pr 4}
|
||||
set i [join $args]
|
||||
if {![catch {uplevel #0 expr $i} res]} {
|
||||
return [format %.4g $res]
|
||||
return [format %.${pr}g $res]
|
||||
} else {
|
||||
# puts stderr "proc ev0: $res"
|
||||
return 0
|
||||
|
|
|
|||
Loading…
Reference in New Issue