Десятичный формат? - PullRequest
       7

Десятичный формат?

0 голосов
/ 30 апреля 2011

Я только что написал лабораторию, которая должна перевернуть две монеты 500 раз и посчитать, сколько раз были опрокинуты головы и хвосты, и должна рассчитать процент до десятой.Я помню шаблон для десятичного форматирования, но забыл, как его использовать.Может кто-нибудь помочь?Моя программа выглядит следующим образом:

import java.util.Scanner;
import java.text.DecimalFormat;

public class Lab97a
{
        public static void main(String [] args)
        {


        Scanner input = new Scanner(System.in);
        DecimalFormat accuracy=new DecimalFormat("0.0");

        Dice coin;
        int numCoin;
        int numHeads;
        int numTails;
        int count;
        double percentageHeads;
        double percentageTails;

        coin=new Dice(2);
        numHeads=0;
        numTails=0;

        System.out.println("A coin is tossed 500 times. The results are asfollows: ");

        for (count=1;count<=500;count=count+1)
        {
            numCoin=coin.roll();
            if (numCoin==1)
            {
                numHeads+=1;
            }
            if (numCoin==2)
            {
                numTails+=1;
            }
        }
        percentageHeads=numHeads/5;
        percentageTails=numTails/5;
        System.out.println("Heads was flipped "+numHeads+" times,
"+percentageHeads+"%.");
        System.out.println("Tails was flipped "+numTails+" times, "+percentageTails+"%");
        }
}

Ответы [ 2 ]

2 голосов
/ 30 апреля 2011

Похоже, вам просто нужно отформатировать точность, например, accuracy.format(percentageHeads).См. NumberFormat.format(double), что DecimalFormat расширяется.

1 голос
/ 30 апреля 2011

Для этого можно использовать метод String.format, как описано здесь :

   System.out.println(String.format("Heads was flipped %d times, %.2f %%"), numHeads,percentageHeads);
...