python尼姆游戏设计
时间: 2023-10-30 12:05:08 浏览: 118
尼姆游戏是一种经典的数学博弈,规则如下:
1. 有若干堆石子,每堆石子数量不限。
2. 两个玩家轮流从中取走石子。
3. 每次只能从一堆石子中取走至少一个石子,至多取走整堆石子。
4. 取走最后一个石子的玩家胜利。
下面是一个简单的Python实现:
```python
def nim_game():
heaps = [] # 堆的数量和石子数量
while True:
try:
heap = int(input("请输入堆数:"))
if heap <= 0:
raise ValueError
else:
break
except ValueError:
print("请输入正整数!")
for i in range(heap):
while True:
try:
stones = int(input(f"请输入第{i+1}堆的石子数量:"))
if stones <= 0:
raise ValueError
else:
heaps.append(stones)
break
except ValueError:
print("请输入正整数!")
while True:
for i in range(len(heaps)):
print(f"第{i+1}堆还有{heaps[i]}颗石子。")
while True:
try:
heap = int(input("请选择要取走石子的堆数:"))
if heap <= 0 or heap > len(heaps):
raise ValueError
else:
break
except ValueError:
print("请输入正确的堆数!")
while True:
try:
stones = int(input("请选择要取走的石子数量:"))
if stones <= 0 or stones > heaps[heap-1]:
raise ValueError
else:
heaps[heap-1] -= stones
break
except ValueError:
print("请输入正确的石子数量!")
if sum(heaps) == 0:
print("游戏结束,恭喜你获胜!")
break
```
这个程序会先让玩家输入堆数和每堆的石子数量,然后轮流让玩家选择要从哪堆石子中取走多少个。直到所有石子都被取完,游戏结束。
阅读全文
相关推荐
![py](https://img-home.csdnimg.cn/images/20250102104920.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)