Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
eerewr
#tclsh 8.6 # Пример использования upvar # Преобразование значения в положительное число перед использованием proc SetPositive {variable value } { upvar $variable myvar; if {$value < 0} { set myvar [expr -$value];} else {set myvar $value;} return $myvar; } SetPositive x 5; SetPositive y -5; puts "X : $x Y: $y\n" # размещение Upvars # Процедура второго уровня - будет вызвана процедурой one proc two {y} { upvar 1 $y z ;# связь вызываемого значения с переменной z upvar 2 x a ;# связь переменной x с переменной a puts "процедура twо: Z: $z A: $a" ;# вывод значений, просто для проверки set z 1 ;# установка z, передача на уровень выше числа 1 set a 2 ;# установка x, передача числа 2 на два уровня выше } ;# Процедура первого уровня - будет вызвана из основной программы proc one {y} { upvar $y z ;# это связь вызываемого значения с переменной z puts "процедура one: Z: $z" ;# Вывод значения, должно быть 5 two z ;# вызов процедуры two, которая изменит значение } one y ;# вызов one, и вывод X и Y после вызова. puts "\nX: $x Y: $y"
run
|
edit
|
history
|
help
0
Perfect neg float bin multiplier
Convert a collection to a list
Dec to binary addition
NISP - Planning ID Unit Test
Longest common subsequence
trail multiplication
Working for neg
Santosh bin mul eo
code to identify whether particular coordinate lies in bbox
proc example {required {default1 А} {default2 Б} args} {...}