41 lines
748 B
Tcl
41 lines
748 B
Tcl
load ./q3.so
|
|
|
|
source symul_lib.tcl;
|
|
|
|
set liczbaWierz 6
|
|
set sasiedzi(0) {5 1}
|
|
set sasiedzi(1) {0 2}
|
|
set sasiedzi(2) {1 3}
|
|
set sasiedzi(3) {2 4}
|
|
set sasiedzi(4) {3 5}
|
|
set sasiedzi(5) {4 0}
|
|
|
|
|
|
fiber create $liczbaWierz {
|
|
set suma $id_los
|
|
set licz [expr $liczbaWierz - 1]
|
|
set wynik ""
|
|
wyslij 1 $suma
|
|
fiber yield;
|
|
while {$run} {
|
|
if {$kom(0)!="" && $wynik!="end"} {
|
|
if {$licz>0} {
|
|
set k $kom(0)
|
|
set suma [expr $id_los + $k]
|
|
set licz [expr $licz - 1]
|
|
wyslij 1 $suma
|
|
} else {
|
|
set wynik "end"
|
|
}
|
|
}
|
|
fiber yield;
|
|
}
|
|
}
|
|
|
|
Inicjalizacja;
|
|
|
|
proc wizualizacja {} {
|
|
fiber_iterate {_puts "id: $id wartosc: $id_los, suma: $suma, licz: $licz, $wynik"}
|
|
}
|
|
|
|
fiber yield; runda; wizualizacja |