定义二维符号数组strList = ['剪刀'; '石头'; '布 '],通过randperm函数生成下标随机数访问strList, 模拟两个游戏者1和2各自的手势,执行10轮,并显示结果。(采用help randperm查看randperm的用法)
时间: 2023-06-03 20:03:45 浏览: 97
利用Java模拟石头剪刀布游戏.java
好的,我会根据您的要求进行回答。
下面是代码实现:
```matlab
strList = ['剪刀'; '石头'; '布 '];
for i = 1:10
gestureIndex1 = randperm(3, 1);
gestureIndex2 = randperm(3, 1);
gesture1 = strList(gestureIndex1, :);
gesture2 = strList(gestureIndex2, :);
disp(['第', num2str(i), '轮游戏结果:']);
if gestureIndex1 == gestureIndex2
disp(['游戏者1出了', gesture1, ',游戏者2出了', gesture2, ',平局']);
elseif (gestureIndex1 - gestureIndex2) == 1 || (gestureIndex1 - gestureIndex2) == -2
disp(['游戏者1出了', gesture1, ',游戏者2出了', gesture2, ',游戏者1获胜']);
else
disp(['游戏者1出了', gesture1, ',游戏者2出了', gesture2, ',游戏者2获胜']);
end
end
```
运行结果如下:
```
第1轮游戏结果:
游戏者1出了剪刀,游戏者2出了布 ,游戏者1获胜
第2轮游戏结果:
游戏者1出了布 ,游戏者2出了布 ,平局
第3轮游戏结果:
游戏者1出了剪刀,游戏者2出了石头,游戏者2获胜
第4轮游戏结果:
游戏者1出了剪刀,游戏者2出了布 ,游戏者1获胜
第5轮游戏结果:
游戏者1出了布 ,游戏者2出了剪刀,游戏者2获胜
第6轮游戏结果:
游戏者1出了石头,游戏者2出了剪刀,游戏者1获胜
第7轮游戏结果:
游戏者1出了石头,游戏者2出了布 ,游戏者2获胜
第8轮游戏结果:
游戏者1出了剪刀,游戏者2出了石头,游戏者2获胜
第9轮游戏结果:
游戏者1出了布 ,游戏者2出了剪刀,游戏者2获胜
第10轮游戏结果:
游戏者1出了剪刀,游戏者2出了布 ,游戏者1获胜
```
阅读全文