我正在编写一个程序,该程序可以抛硬币,然后输出结果是正面(H(还是反面(T(:
import java.util.Random;
public class coin {
public static void main (String [] arg) {
Random r = new Random();
int flip = r.nextInt(2);
if (flip == 1) {
System.out.print("H");
} else {
System.out.print("T");
}
}
}
接下来,我希望程序继续掷硬币,直到它连续掷出 3 个正面。
因此,例如,我希望它输出以下内容,该输出在识别 3 个头部后停止:
嘻
��我在弄清楚如何让 Java 继续翻转硬币时遇到了问题。我尝试实现一个 for 循环,让我翻转硬币固定次数,但我宁愿程序计算出硬币自己翻转多少次。我怀疑它应该带有一个 while-loop,但我似乎无法弄清楚如何实现。任何帮助将不胜感激。
使用计数器跟踪翻转了多少个磁头,并循环直到翻转了 3 个磁头:
Random r = new Random();
int counter = 0;
while(counter <3)
{
int flip = r.nextInt(2);
if (flip == 1) {
System.out.print("H");
counter++;
} else {
System.out.print("T");
counter = 0;
}
}
像这样:
int headsInRow=0;
while(headsInRow<3){
int flip=doFlip();
if(heads)headsInRow++;
else headsInRow=0;
}
ofc 它是一个伪代码,但你应该明白这个想法。