Advertisement
Guest User

Untitled

a guest
Aug 17th, 2017
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. const FALSE = 0
  2. const TRUE = 1
  3. range BOOLEAN = FALSE..TRUE
  4.  
  5. //ogni giocatore ha 3 carte iniziali
  6. GIOCATORE = GIOCATORE[TRUE][TRUE][TRUE],
  7. GIOCATORE[c1:BOOLEAN][c2:BOOLEAN][c3:BOOLEAN] = (
  8. when (c1==TRUE) gioca[1] -> ATTENDIRISULTATO[FALSE][c2][c3] |
  9. when (c2==TRUE) gioca[2] -> ATTENDIRISULTATO[c1][FALSE][c3] |
  10. when (c3==TRUE) gioca[3] -> ATTENDIRISULTATO[c1][c2][FALSE] |
  11. hoVinto -> GIOCATORE |
  12. nonHoVinto -> GIOCATORE
  13. ),
  14. ATTENDIRISULTATO[c1:BOOLEAN][c2:BOOLEAN][c3:BOOLEAN] = (
  15. preso -> GIOCATORE[c1][c2][c3] |
  16. nonPreso -> GIOCATORE[c1][c2][c3] |
  17. nullo -> GIOCATORE[c1][c2][c3]
  18. ).
  19.  
  20. ARBITRO = ARBITRO[0][0][0],
  21. ARBITRO[preseMarco:0..3][preseAnna:0..3][giocate:0..3]=(
  22. when(giocate < 3) marco.gioca[valCartaMarco:1..3] -> anna.gioca[valCartaAnna:1..3] -> DECIDI[preseMarco][preseAnna][giocate][valCartaMarco][valCartaAnna] |
  23. when(giocate == 3) finePartita -> DECIDIVINCITORE[preseMarco][preseAnna]
  24. ),
  25. DECIDI[preseMarco:0..3][preseAnna:0..3][giocate:0..3][valCartaMarco:1..3][valCartaAnna:1..3] = (
  26. when(valCartaMarco>valCartaAnna) marco.preso -> anna.nonPreso -> ARBITRO[preseMarco+1][preseAnna][giocate+1] |
  27. when(valCartaMarco<valCartaAnna) marco.nonPreso -> anna.preso -> ARBITRO[preseMarco][preseAnna+1][giocate+1] |
  28. when(valCartaMarco==valCartaAnna) marco.nullo -> anna.nullo -> ARBITRO[preseMarco][preseAnna][giocate+1]
  29. ),
  30. DECIDIVINCITORE[preseMarco:0..3][preseAnna:0..3] = (
  31. when(preseMarco>preseAnna) marco.hoVinto -> anna.nonHoVinto -> ARBITRO |
  32. when(preseMarco<preseAnna) marco.nonHoVinto -> anna.hoVinto -> ARBITRO |
  33. when(preseMarco==preseAnna) marco.nonHoVinto -> anna.nonHoVinto -> ARBITRO
  34. ).
  35.  
  36. ||SYS = (marco:GIOCATORE || anna:GIOCATORE || ARBITRO).
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement