PLEASE FIX AND MODIFY THIS JAVA SO WHEN I UPLOAD IT TO HYPERGRADE IT PASSES ALL TEST CASSES PLEASES. RIGHT NOW IT SAYS 0 OUT 3 PASSED. THE PICTURES THAT I PROVIDED PROOF THAT WHEN I UPLOAD IT TO HYPERGRADES IT FAILS TEST CASSES. THANK YOU.
JAVA PROGRAM
import java.io.*;
import java.util.Scanner;
public class FileTotalAndAverage {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Please enter the file name: ");
while (true) {
String fileName = scanner.nextLine();
File file = new File(fileName);
if (file.exists() && file.isFile()) {
processFile(file);
break; // Exit loop if file is found and processed
} else {
System.out.println("File '" + fileName + "' does not exist.\nPlease enter the file name again: ");
}
}
scanner.close();
}
private static void processFile(File file) {
try {
Scanner fileScanner = new Scanner(file);
double total = 0;
int count = 0;
while (fileScanner.hasNextDouble()) {
double number = fileScanner.nextDouble();
total += number;
count++;
}
fileScanner.close();
double average = (count == 0) ? 0 : total / count;
System.out.printf("Total: %.3f%n", total);
System.out.printf("Average: %.3f%n", average);
} catch (FileNotFoundException e) {
// This block should never be reached as we checked if the file exists before
System.err.println("Unexpected error: " + e.getMessage());
}
}
}
-456.167
19.815
-322.301
344.949
-850.533
-672.360
-188.767
646.462
-118.775
808.613
-746.865
-370.432
219.607
-166.298
-508.636
-989.128
-205.020
-928.165
-180.699
300.753
316.036
709.371
-886.860
-585.388
-554.302
-394.801
-970.233
905.941
787.854
-181.240
74.665
802.453
-951.292
-510.656
-203.999
-276.199
-350.575
398.501
-519.799
469.199
592.120
713.424
155.967
585.481
-780.846
387.700
457.806
560.933
-343.916
486.806
-43.184
237.494
191.488
309.275
-64.415
-206.333
-377.696
-409.553
-734.282
-777.221
-318.800
-695.745
40.631
-384.036
-937.134
-380.501
-77.083
756.524
-720.959
-579.412
-215.301
542.097
-402.541
468.721
151.050
573.296
-342.210
758.038
200.691
882.294
8.042
-87.760
634.811
-777.953
767.795
570.716
594.012
596.648
900.010
-370.754
985.007
785.562
-838.952
-71.182
72.845
-500.759
698.946
527.167
1.082
Step by step
Solved in 5 steps with 4 images