【发布时间】:2015-12-04 19:32:32
【问题描述】:
我正在为我的 Java 类编写一个程序,该程序需要计算一对夫妇需要多少个孩子才能拥有一种性别,假设孩子是男性的可能性为 50/50 .然后,该程序需要跟踪在 T 数量的试验中,每个性别需要 2 个孩子有多少次,3 个孩子、4 个孩子和最后 5 个或更多孩子需要多少次。我通过在运行 T 次的 for 循环中嵌套一个 while 循环来解决这个问题。我的问题是,虽然我的 for 循环运行了 T 次,但我的 while 循环会吐出,比如 3 个孩子,然后不会更新 for 循环的其余部分。关于如何让 while 循环正确更新的任何建议?谢谢!
public class B
{
public static void main(String[] args)
{
int girls = 0;
int boys = 0;
System.out.print("Enter variable: ");
int T = StdIn.readInt();
for (int i = 0; i < T; i++)
{
while ((boys < 1) || (girls < 1))
{
if (Math.random() < 0.5)
{
boys = boys + 1;
}
else
{
girls = girls + 1;
}
}
}
}
}
【问题讨论】:
-
您的代码完全按照您的要求执行。我担心你没有正确理解问题陈述。
标签: java loops for-loop while-loop