Бросок кубиков для b-метода в Ателье B

Домашнее задание требует, чтобы я разработал спецификацию B настольной игры Snakes & Ladders с помощью Atelier B.

Цель игры - бросить один кубик и продвинуться вверх по доске. Цель состоит в том, чтобы завершить игру, приземлившись на последнюю клетку, то есть 100.

Таким образом, у меня должен быть кубик, который выпадает случайным образом от 1 до 6. Тем не менее, я не уверен, как сгенерировать число или выпадать кубик случайным образом от 1 до 6… На данный момент он просто выпадает только до 2.

Может, кто-нибудь поможет мне, так как я новичок в B-программировании и B-инструментах в целом.

      Machine 
     new 

     VARIABLES
         dice 

     INVARIANT
         dice : NAT1 

     INITIALISATION
         dice := 0 

     OPERATIONS 
         //rolling the dice 
         rollDice <-- throwDice =
         BEGIN 
             dice := 2 ||
             rollDice := Rolled
         END;
END

     

0 ответов

Другие вопросы по тегам