Advertisement
PifyZ

Exercice du lundi n°3

Jul 7th, 2014
510
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
TCL 1.22 KB | None | 0 0
  1. # http://zetcode.com/lang/tcl/io/
  2. # http://wiki.tcl.tk/1549
  3. # https://fr.wikipedia.org/wiki/Tool_Command_Language
  4.  
  5. # ---------
  6. # Fonctions
  7. # ---------
  8. # Récupérer une valeur au hasard dans une liste
  9. proc lpick list {
  10.     lindex $list [ expr { int(rand() * [ llength $list ]) } ]
  11. }
  12.  
  13. # Donner la valeur d'une carte
  14. proc card_value card {
  15.     switch $card {
  16.         valet - dame - roi { return 10 }
  17.         as                 { return 11 }
  18.         default            { return $card }
  19.     }
  20. }
  21.  
  22. proc pick_card {game i} {
  23.     upvar $game a_game
  24.     set card [ lreplace $a_game $i $i ]
  25.     set a_game $card
  26.     return [ lindex $card $i ]
  27. }
  28.  
  29. # ---
  30. # Jeu
  31. # ---
  32. # Noms
  33. set names {
  34.     Yannick Aurélie Guillaume Benoît Hugo Aymeric
  35.     George Jérémy Matthieu Romain Elisa Corentin
  36. }
  37.  
  38. # Cartes
  39. set cards { 2 3 4 5 6 7 8 9 10 valet dame roi as }
  40.  
  41. # Types
  42. set types { coeur pique trèfle carreau }
  43.  
  44. # Création du jeu de cartes
  45. set game [ list ]
  46.  
  47. foreach card $cards {
  48.     foreach type $types {
  49.         lappend game "$card de $type"
  50.     }
  51. }
  52.  
  53. set player(Yannick) [ list ]
  54.  
  55. for { set i 0 } { $i < 3 } { incr i } {
  56.     lappend player(Yannick) [ pick_card game [ lsearch $game [ lpick $game ] ] ]
  57. }
  58.  
  59. puts $player(Yannick)
  60.  
  61. # puts $player(Yannick)
  62.  
  63. # gets stdin
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement