Pregunta

Acabo de escribir un laboratorio que se supone que debe lanzar dos monedas 500 veces y contar cuántas veces se voltearon cara y cruz y se supone que calcula el porcentaje a la décima.Recuerdo la plantilla para el formato decimal, pero olvidé cómo usarla.¿Alguien puede ayudar?Mi programa es el siguiente:

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+"%");
        }
}
¿Fue útil?

Solución

Parece que solo necesita formatear la precisión con, por ejemplo,accuracy.format(percentageHeads).Consulte NumberFormat.format(double) que DecimalFormat se extiende.

Otros consejos

Puede utilizar el método String.format para esto, como descrito aquí :

   System.out.println(String.format("Heads was flipped %d times, %.2f %%"), numHeads,percentageHeads);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top