В F # значения неизменяемы. Если вы хотите объявить изменяемую переменную, используйте ключевое слово mutable
let mutable player = 0
let mutable dealer = 0
Чтобы присвоить новое значение изменяемой переменной, вы должны использовать оператор <-
(=
- сравнение)
for i = 1 to 10 do
player <- player + randomCh()
dealer <- dealer + randomCh()
Дополнительная литература Значения в F #
В F # вы можете использовать printf
вместо Console.Write
. Также рассмотрите возможность использования неизменяемых значений с рекурсией вместо l oop с изменяемыми переменными. Я не знаю правил блэкджека или любой другой игры, которую вы создаете, но вот пример рекурсивного подхода:
type GameResult = Player | Dealer | Draw
let rec notblackjack player dealer round =
if player >= 21 then Dealer
elif dealer >= 21 then Player
elif round = 10 then Draw // in this game we have draw on round 10
else blackjack (player + randomCh()) (dealer + randomCh()) (round + 1)
notblackjack 0 0 1 |> printfn "%A"