Buonasera a tutti, ho iniziato da un mesetto a studiare programmazione Java (è la prima volta in generale) tramite il libro di Walter Savitch. Utilizzo Eclipse e fino ad ora non ho avuto problemi a parte ora. Sto scrivendo un programma mostrato nel libro, e quando vado per compilarlo mi da un errore. Il programma è il seguente:
import java.util.Scanner;
public class MisuraCerchio {
public static void main(String [] args) {
double raggio; //in metri
double area; //in metri quadri
Scanner tastiera = new Scanner(System.in);
System.out.println("Scrivi il raggio del cerchio in metri");
raggio = tastiera.nextDouble();
area = 3.14159 * raggio * raggio;
System.out.println("Un cerchio di raggio "+ raggio + " metri");
System.out.println(" ha un'area di " + area + " metri quadri.");
}
}
l'output è quindi ovviamente il seguente: Scrivi il raggio del cerchio in metri
Ma quando vado ad inserire un numero con decimale, ad esempio 2.5 mi restituisce questo
Exception in thread "main" java.util.InputMismatchException
at java.base/java.util.Scanner.throwFor(Scanner.java:939)
at java.base/java.util.Scanner.next(Scanner.java:1594)
at java.base/java.util.Scanner.nextDouble(Scanner.java:2564)
at MisuraCerchio.main(MisuraCerchio.java:11)
Sapreste dirmi per favora cosa significa? Se inserisco un numero senza parte decimale, ad esempio "2" lo compila, altrimenti no, e non è la prima votla, me lo fa con tutti i numeri in virgola mobile quell'errore. Grazie