如何重新启动循环如果玩家破产

19日视图(30天)
罗伯特。
罗伯特。 2015年1月13日
评论道: 杰夫•海斯 2015年1月14日
这是我的代码选择2下去,卡片,并创建一个手,一个商人和一个球员。
经销商数= 0
循环经销商的初2卡
y =“y”;
n =“n”;
dhand = 0;
imshow (b1)%初经销商面对的第一张牌
标题(“经销商”牌”)
idx = randperm (52)每张卡片在甲板上,这被随机打乱
dealer_count = dealer_count + 1;
imshow (deckcan {idx} {1})%显示卡片
标题(“经销商”牌”)%标题经销商卡
dcardvalue = deckcan {idx} {2}%如果选择的卡片是一个王牌让玩家选择是否1或11
如果dealer_count = = 1打破
结束
结束
dhand = dhand + dcardvalue
phand = 0;
player_count = 0;%循环让玩家初2卡
idx = randperm(长度(deckcan))
imshow (deckcan {idx} {1})%显示球员卡
标题(球员”年代卡)
pcardvalue1 = deckcan {idx} {2}%显示卡片的价值选择
acesolvertest2 (pcardvalue1);
player_count = player_count + 1;
如果player_count > = 1打破
结束
结束
player_count = 0;%循环让玩家初2卡
idx = randperm(长度(deckcan))
imshow (deckcan {idx} {1})%显示球员卡
标题(球员”年代卡)
pcardvalue2 = deckcan {idx} {2}%显示卡片的价值选择
acesolvertest2 (pcardvalue2);
player_count = player_count + 1;
如果player_count > = 1打破
结束
结束%表示年底画两个初卡片
phand = pcardvalue1 + pcardvalue2%增加两个循环创建playerhand即phand卡值
提示=的球员想要更多的卡片按y然后输入冲击和n然后输入站”%循环球员增加手
idx = randperm (52);
响应=输入(“按y或n”);
如果响应= = y;
imshow (deckcan {idx} {1})
标题(球员”年代卡)
pcardvalue = deckcan {idx} {2}
acesolvertest2 (pcardvalue);
phand = phand + pcardvalue%增加所选卡片的价值
disp (“你”)%表示你有一张卡片
如果phand > 21%如果玩家手超过21你破产
disp (“你破产,按n经销商转的)
结束
其他的响应= = n;
disp (“你站,经销商把”)
打破
结束
结束
什么是我在当球员的手,phand超过21他们破产,如何重新启动整个循环

答案(1)

杰夫•海斯
杰夫•海斯 2015年1月14日
罗伯特-你可能大部分的代码封装在一个 循环,一旦玩家破产(或我想赢了)你可以问他/她,如果他/她希望继续。如果是这样,那么你继续下去,你还有退出循环。类似的
%循环,直到用户决定退出
真正的
%玩游戏,所以这将是你的代码
%的游戏,玩家希望继续
结果=输入(“你想再次玩吗?(Y / N) ',“年代”);
如果~ strcmpi(结果,“Y”)
打破;
结束
结束
只要用户输入 Y (或 y ),游戏将继续下去。
2的评论
杰夫•海斯
杰夫•海斯 2015年1月14日
罗伯特-这将是更容易理解你代码是做什么如果是连接作为一个m文件上面而不是将它粘贴到你的评论。请用回形针按钮把该文件。如果你不理睬我建议您添加的代码,程序虫好一轮即直到用户破产?

登录置评。

类别

找到更多的在纸牌游戏帮助中心文件交换

标签

s manbetx 845

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!