JAVA PROGRAM  Chapter 4. Homework Assignment (read instructions carefully) Write a program that asks the user for the name of a file. The program should read all the numbers from the given file and display the total and average of all numbers in the following format (three decimal digits): Total: nnnnn.nnn Average: nnnnn.nnn Class name: FileTotalAndAverage   I need a "," (comma) to the number format here (after the first %): System.out.printf(Locale.US, "Total: %.3f%n", total);  Also, I don't need to set the Locale. 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   import java.io.*; import java.util.Scanner; import java.util.Locale; public class FileTotalAndAverage {        public static void main(String[] args) {         Scanner scanner = new Scanner(System.in);         scanner.useLocale(Locale.US); // Set the locale to use a period as decimal separator         System.out.println("Please enter the file name: ");         while (true) {             String fileName = scanner.nextLine();             File file = new File(fileName);             if (file.exists() && file.is File()) {                 processFile(file);                 break;  // Exit loop if the 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);             fileScanner.useLocale(Locale.US); // Set the locale to use a period as decimal separator             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;             // Format the output with three decimal places and a period as the decimal separator             System.out.printf(Locale.US, "Total: %.3f%n", total);             System.out.printf(Locale.US, "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());         }     } }   Input1.txt -283.760 -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

EBK JAVA PROGRAMMING
9th Edition
ISBN:9781337671385
Author:FARRELL
Publisher:FARRELL
Chapter12: Exception Handling
Section: Chapter Questions
Problem 12PE
icon
Related questions
Question
100%

JAVA PROGRAM 

Chapter 4. Homework Assignment (read instructions carefully)
Write a program that asks the user for the name of a file. The program should read all the numbers from the given file and display the total and average of all numbers in the following format (three decimal digits):
Total: nnnnn.nnn
Average: nnnnn.nnn
Class name: FileTotalAndAverage
 
I need a "," (comma) to the number format here (after the first %):
System.out.printf(Locale.US, "Total: %.3f%n", total);  Also, I don't need to set the Locale. 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
 

import java.io.*;
import java.util.Scanner;
import java.util.Locale;

public class FileTotalAndAverage {
  
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        scanner.useLocale(Locale.US); // Set the locale to use a period as decimal separator
        System.out.println("Please enter the file name: ");
        while (true) {
            String fileName = scanner.nextLine();
            File file = new File(fileName);
            if (file.exists() && file.is File()) {
                processFile(file);
                break;  // Exit loop if the 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);
            fileScanner.useLocale(Locale.US); // Set the locale to use a period as decimal separator
            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;
            // Format the output with three decimal places and a period as the decimal separator
            System.out.printf(Locale.US, "Total: %.3f%n", total);
            System.out.printf(Locale.US, "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());
        }
    }
}

 

Input1.txt
-283.760
-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
 
 
 
 
Test Case 1 Failed Show what's missing
Please enter the file name: double_inputl.txt ENTER
Total: 783.236\n
Average: 783.236\n
Test Case 2 Failed Show what's missing
Please enter the file name: double_input2.txt ENTER
Total: 7958.535 \n
Average: 7958.535 \n
Test Case 3 Failed Show what's missing
Please enter the file name: double_input3.txt ENTER
File 'double_input3.txt' does not exist.\n
Please enter the file name: double_input1.txt ENTER
Total: 783.236\n
Average: 783.236\n
Transcribed Image Text:Test Case 1 Failed Show what's missing Please enter the file name: double_inputl.txt ENTER Total: 783.236\n Average: 783.236\n Test Case 2 Failed Show what's missing Please enter the file name: double_input2.txt ENTER Total: 7958.535 \n Average: 7958.535 \n Test Case 3 Failed Show what's missing Please enter the file name: double_input3.txt ENTER File 'double_input3.txt' does not exist.\n Please enter the file name: double_input1.txt ENTER Total: 783.236\n Average: 783.236\n
Test Case 1
Please enter the file name: \n
double_input1.txt ENTER
Total: -5,748.583 \n
Average: -57.486 \n
Test Case 2
Please enter the file name: \n
double_input2.txt ENTER
Total: 112,546.485 \n
Average: 56.273 \n
Test Case 3
Please enter the file name: \n
double_input3.txt ENTER
File 'double_input3.txt' does not exist.\n
Please enter the file name again: \n
double input1.txt ENTER
Total: -5,748.583 \n
Average: -57.486 \n
Transcribed Image Text:Test Case 1 Please enter the file name: \n double_input1.txt ENTER Total: -5,748.583 \n Average: -57.486 \n Test Case 2 Please enter the file name: \n double_input2.txt ENTER Total: 112,546.485 \n Average: 56.273 \n Test Case 3 Please enter the file name: \n double_input3.txt ENTER File 'double_input3.txt' does not exist.\n Please enter the file name again: \n double input1.txt ENTER Total: -5,748.583 \n Average: -57.486 \n
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps with 3 images

Blurred answer
Knowledge Booster
Graphical User Interface
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT
Programming with Microsoft Visual Basic 2017
Programming with Microsoft Visual Basic 2017
Computer Science
ISBN:
9781337102124
Author:
Diane Zak
Publisher:
Cengage Learning
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,
Programming Logic & Design Comprehensive
Programming Logic & Design Comprehensive
Computer Science
ISBN:
9781337669405
Author:
FARRELL
Publisher:
Cengage
COMPREHENSIVE MICROSOFT OFFICE 365 EXCE
COMPREHENSIVE MICROSOFT OFFICE 365 EXCE
Computer Science
ISBN:
9780357392676
Author:
FREUND, Steven
Publisher:
CENGAGE L