niknax Δημοσ. 24 Μαρτίου 2008 Δημοσ. 24 Μαρτίου 2008 Kαλησπέρα σε όλους! Θέλω να εισάγω μια double και με τη χρήση της Math.floor () να στρογγυλοποιηθεί.Αλλά παίρνω το εξής : Exception in thread "main" java.util.InputMismatchException at java.util.Scanner.throwFor(Scanner.java:840) at java.util.Scanner.next(Scanner.java:1461) at java.util.Scanner.nextDouble(Scanner.java:2387) at MathFloor.main(MathFloor.java:18) O κώδικας: import java.util.Scanner; public class MathFloor { public static void main(String[] args) { Scanner input = new Scanner (System.in); double x ; double y; System.out.println("Βάλε μια double: "); x = input.nextDouble(); y = Math.floor( x + 0.5); System.out.printf("Η double τιμή που έβαλες είναι: \n"+x+ "και η στρογγυλοποιημένη είναι: "+y); } } Το περίεργο είναι πως αν δώσω αρχική τιμή στην χ και δεν εισαχθεί άλλη τιμή,δουλεύει.Γιατί????
georgemarios Δημοσ. 24 Μαρτίου 2008 Δημοσ. 24 Μαρτίου 2008 μηπως, όταν βαζεις το input, αντι για τελεια βαζεις κομα ως υποδιαστολή? δοκιμασε > System.out.println("Βάλε μια double: "); if( input.hasNextDouble() ) x = input.nextDouble(); τουλαχιστον για να μη σου σκαει....
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.