为了账号安全,请及时绑定邮箱和手机立即绑定

在二十一点游戏中制作一段时间的麻烦

在二十一点游戏中制作一段时间的麻烦

萧十郎 2022-01-06 17:59:25
private static void generarbanca() {    int valorcartabanca;    do {        int valorcartabancamin = 1;// from one to 11        valorcartabanca = valorcartabancamin + (byte) (Math.random() * 10);    }while (valorcartabanca<15);}valorcartamin是我想为 crupier 生成的最小数字,所以问题是程序进入无限循环。我希望它生成数字直到达到 15 分并计算所需的数字直到 15 等等。
查看完整描述

3 回答

?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

1 + (Math.random() * 10) 将永远小于 15。你想写吗

valorcartabanca += valorcartabancamin + (byte) (Math.random() * 10);

请注意,+=而不是简单的=.


查看完整回答
反对 回复 2022-01-06
?
慕标琳琳

TA贡献1830条经验 获得超9个赞

您需要从循环中提取 valorcartabancamin 的初始化,此外还需要保留 valorcartabanca 的当前值,因此使用 += 运算符:


 private static void generarbanca() {

    int valorcartabancamin = 1;// desde uno hasta 11

    int valorcartabanca = 0;

    do {

        valorcartabanca += valorcartabancamin + (byte) (Math.random() * 10);

    } while (valorcartabanca<15);

}


查看完整回答
反对 回复 2022-01-06
?
侃侃无极

TA贡献2051条经验 获得超10个赞

你不是在积累 valorcartablanca。尝试


int valorcartabanca = 1;

do {    

    valorcartabanca = valorcartabancamin + (byte) (Math.random() * 10);

}while (valorcartabanca<15);


查看完整回答
反对 回复 2022-01-06
  • 3 回答
  • 0 关注
  • 134 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信