Java sphère de calcul des volumes
J'ai une classe Java et im perplexe sur cette question. Nous avons à faire à un calculateur de volume. Vous entrez le diamètre d'une sphère, et le programme crache le volume. Il fonctionne très bien avec des nombres entiers, mais à chaque fois que je jette un décimal à elle, il se bloque. Im en supposant qu'il a à faire avec la précision de la variable
double sphereDiam;
double sphereRadius;
double sphereVolume;
System.out.println("Enter the diamater of a sphere:");
sphereDiam = keyboard.nextInt();
sphereRadius = (sphereDiam / 2.0);
sphereVolume = ( 4.0 / 3.0 ) * Math.PI * Math.pow( sphereRadius, 3 );
System.out.println("The volume is: " + sphereVolume);
Donc, comme je l'ai dit si je l'ai mis dans un nombre entier, il fonctionne très bien. Mais je l'ai mis en 25,4 et il se bloque sur moi.
Ummm... ne pas nextInt() analyser uniquement les entiers?
OriginalL'auteur Curly5115 | 2013-01-25
Vous devez vous connecter pour publier un commentaire.
C'est parce que
keyboard.nextInt()
est en attente d'uneint
, pas unfloat
oudouble
. Vous pouvez le modifier:nextFloat()
etnextDouble()
vont ramasserint
les types de bien et de les convertir automatiquement au type désiré.nextDouble()
et de gardersphereDiam
undouble
.Merci beaucoup! C'est drôle j'ai essayé avant et ça ne fonctionne pas. Je dois avoir tapé dans le mal. Merci encore!!
OriginalL'auteur Marc Baumbach
OriginalL'auteur Adumuah Dowuona