Итак, у меня есть файл со следующими значениями: 3455; 1,67; 83,98; 0,1; 23,178; 2,45; 3,5; 16,88. Код показывает значения пользователю, и он должен решить, какое число является наибольшим и наименьшим. Это то, что я написал, но я получаю другой вывод, который он должен показать.
import java.io.File;
import java.util.Scanner;
import java.io.IOException;
public class NumbersNew {
public static void main(String[] args) throws IOException {
//Create a scanner object which will read the data from the file
Scanner sc = new Scanner(new File("Numbers.txt"));
sc.useDelimiter("\\s*;\\s*");
while (sc.hasNextLine()) {
System.out.println(sc.nextLine());
}
//Determine which number was the greatest and which one was the least
double largest = Double.MIN_VALUE;
double smallest = Double.MAX_VALUE;
while(sc.hasNextDouble()) {
double val = sc.nextDouble();
if (val < smallest) {
smallest = val;
}
if(val > largest) {
largest = val;
}
System.out.println(largest);
System.out.println(smallest);
}
sc.close();
//Print these numbers
System.out.println("The biggest number in the file is: " + largest);
System.out.println("The smallest number in the file is: " +smallest);
}
}
Это вывод, который я получаю, и я не понимаю, почему:
3455; 1,67; 83,98; 0,1; 23178; 2,45; 3,5; 16,88
Самое большое число в файле: 4.9E-324
Наименьшее число в файле: 1.7976931348623157E308.
Может ли кто-нибудь сделать предложение или указать мне правильное направление? Спасибо!