我正在编写一个抛硬币的程序,然后输出结果是正面 (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 循环,但我似乎无法弄清楚它是如何实现的。任何帮助将不胜感激。
最佳答案
使用计数器来跟踪有多少个正面已翻转并循环,直到 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;
}
}
关于java - Java中识别两个随机序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52980272/