fork download
  1. proc random_get {} {
  2. return [expr int(rand()*2)]
  3. }
  4.  
  5. proc is_zundoko { val } {
  6. set chk [expr ($val % 32)]
  7. if {$chk == 30} { # 0b11110
  8. return 1
  9. } else {
  10. return 0
  11. }
  12. }
  13.  
  14. set array(0) "ドコ"
  15. set array(1) "ズン"
  16.  
  17. set idx 0
  18.  
  19. set chain ""
  20. set val 0
  21. while {$idx < 100} {
  22. set rnd [random_get]
  23. append chain $rnd
  24. set val [expr ($val*2)]
  25. if { $rnd == 0 } {
  26. puts $array(0)
  27. # no increment
  28. } else {
  29. puts $array(1)
  30. incr val 1
  31. }
  32. set judge [is_zundoko $val]
  33. if { $judge == 1 } {
  34. puts "キヨシ!"
  35. break;
  36. }
  37. incr idx 1
  38. set val [expr $val % 32]
  39. }
  40.  
  41. #puts $val
  42. #puts [expr $val % 32]
Success #stdin #stdout 0s 15768KB
stdin
Standard input is empty
stdout
ドコ
ドコ
ドコ
ドコ
ドコ
ドコ
ドコ
ドコ
ズン
ドコ
ズン
ドコ
ドコ
ドコ
ドコ
ズン
ドコ
ドコ
ズン
ドコ
ドコ
ズン
ドコ
ズン
ドコ
ズン
ズン
ズン
ズン
ドコ
キヨシ!