簡體   English   中英

簡單Java程序中的循環

[英]Loops in simple Java program

我正在為我的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;
                }   
            }
        }
    }
}

您需要重置每次運行的男孩和女孩計數。 因此,您的while循環周圍的代碼應為:

boys = 0;
girls = 0;
while ((boys < 1) || (girls < 1))

但是,在while循環之后,您需要計算此運行適用的家庭人數:2個孩子,3個孩子,4個孩子,5個以上孩子,並增加適當的計數器。

switch(boys + girls) {
    case 2:
        twoKids++;
    break;

    case 3:
        threeKids++;
    break;

    case 4:
        fourKids++;
    break;

    default:
        fivePlusKids++;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM