我有一个抛硬币计划的问题

时间:2016-02-22 17:37:20

标签: java coin-flipping

我是java的新手并使用codehs,我需要在100折的程序中找到头/尾的数量和百分比。我有100次翻转,但百分比和打印金额超出了我,这是我的代码并感谢您的帮助

public class CoinFlips extends ConsoleProgram
{
    public void run()
    {
        for (int i = 0; i < 100; i++)
    {
        if (Randomizer.nextBoolean())
        {
            System.out.println("Heads");
        }
        else
        {
        System.out.println("Tails");
        }
        }
    }
}

4 个答案:

答案 0 :(得分:1)

问题:

结果需要一个计数器和一个变量。

解决方案

int TOTAL =100;
int counter =0;
for (int i = 0; i < TOTAL; i++) {
if (Randomizer.nextBoolean()) {
    System.out.println("Heads");
    counter++;
}else{
    System.out.println("Tails");
}

    double procent = (double)counter/TOTAL*100;
    System.out.println("From "+ TOTAL +" flipped coins " + procent+"% were Heads" );
}

答案 1 :(得分:1)

这是一个可能的解决方案:

添加:

int headCount = 0;
int tailsCount = 0;

您可以通过以下方式使用它们:

        if (Randomizer.nextBoolean())
    {
        System.out.println("Heads");
        headsCount++;
    }
    else
    {
    System.out.println("Tails");
        tailsCount++;
    }

然后写一个方法来计算百分比。由于这看起来像是家庭作业,我会留给你。

答案 2 :(得分:0)

您需要存储 Heads 的次数以及 Tails 的次数:您需要一个变量来存储 Heads 和每次变量变为 HEADS 时递增变量。然后在循环之后,此变量中的数字将是 HEADS 投掷的数量。尾巴是100头。例如:

public class CoinFlips extends ConsoleProgram
{
    public void run()
    {
        int heads = 0;
        for (int i = 0; i < 100; i++)
        {
            if (Randomizer.nextBoolean())
            {
                heads++;
                System.out.println("Heads");
            }
            else
            {
                 System.out.println("Tails");
            }
        }
        System.out.println("Percentage of Heads = " + heads + "%");
        System.out.println("Percentage of Tails = " + (100 - heads) + "%");
    }
}

由于coint tosses的数量为100,因此HEADS投掷量等于HEADS投掷的百分比,这就是你可以输出变量实际值的原因。

答案 3 :(得分:0)

公共类CoinFlips扩展了ConsoleProgram {

public void run()
{
 int headsCount = 0;
    for (int i = 0; i < 100; i++)
    {
        if (Randomizer.nextBoolean())
        {
            System.out.println("Heads");
            headsCount++;
        }
        else
        {
            System.out.println("Tails");
        }
    }
    float headsPercentage = headsCount/100f;
    System.out.println("Heads percentage: " + headsPercentage.toString());
}


}

这应该有效