扑克牌游戏的编程约束

2024-09-30 22:20:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我想实现一个扑克牌游戏。我了解约束编程。但我认为它被用来寻找问题的“解决方案”。特别是,当有无数可能的解决方案时

就我而言,游戏有很多规则,但没有那么多。一个解决方案是玩家可能采取的行动(有结果,我认为这是另一个问题)。其他行动根本不被允许

例如:

一局一局

  1. 规则1:一张点数较高的牌(数字)赢得另一张点数较高的牌
  2. 规则2:一张较低的牌赢另一张

一轮多场比赛

  1. 规则3:如果球员A出示一张皮普牌,球员B出示一张脸牌,这是一轮平局,需要另一场比赛

这些是基本规则,还有更多。我精通Python、JavaScript或Java

我真的不想用很多嵌入的if-else条件来解决这个问题

我学习了语言理论,它似乎很适合我。如果您不知道它是关于什么的,您可以在基于表达式(如正则表达式)的语言中设置可能的“单词”

例如:

(aaa(b)+)*

屈服

aaa,aaab,aaabb,aaa,aaabbbb,...

将这些条款视为可能的行动,以这种方式实施游戏是可能的。但我将实现这样一个解析器或从字符串到动作的映射。所有这些都是可能的,也不是那么难。但是这种编程方式是否有可能(可能更容易)实现呢

我遇到过谷歌的或工具,但它是一个约束求解器。它可以工作,但我不确定,我会投入更多的时间


Tags: 语言游戏规则编程方式玩家数字解决方案