Please Modify this program ASAP BECAUSE IT IS MY MIDTERM so it passes all the test cases. It does not pass the test cases when I upload it to Hypergrade. Because RIGHT NOW IT PASSES 1 OUT OF 7 TEST CASES. And dont forget to take out and change the following in the program:  System.out.println("Program terminated."); because the test case does not need it And change this in the program: Please enter the file name or type QUIT to exit:\n so it reperats once for every test case because it repeats twice in every case as shown in the screenshot. I only need it once. I have provided the failed the test cases and the inputs as a screenshot.  The program must pass the test case when uploaded to Hypergrade.   import java.io.*; import java.util.ArrayList; import java.util.Scanner; public class SymmetricalNameMatcher {     public static void main(String[] args) {         Scanner scanner = new Scanner(System.in);         String fileName;         do {             // Prompt the user to enter a file name or 'QUIT' to exit.             System.out.print("Please enter the file name or type QUIT to exit:\n");             fileName = scanner.nextLine();             if (fileName.equalsIgnoreCase("QUIT")) {                 // If the user types 'QUIT', terminate the program.                 break;             }             File file = new File(fileName);             if (!file.exists()) {                 // If the file doesn't exist, display an error message and continue to the next iteration.                 System.out.println("File '" + fileName + "' is not found.");                 continue;             }             if (file.length() == 0) {                 // If the file is empty, display an error message and continue to the next iteration.                 System.out.println("File '" + fileName + "' is empty.");                 continue;             }             ArrayList names = new ArrayList<>();             int lineCount = 0;             try (BufferedReader reader = new BufferedReader(new FileReader(file))) {                 String line;                 // Read names from the file and store them in the 'names' ArrayList.                 while ((line = reader.readLine()) != null) {                     names.add(line);                     lineCount++;                 }             } catch (IOException e) {                 e.printStackTrace();             }             int matches = 0;             // Compare names in symmetrical positions.             for (int i = 0; i < lineCount / 2; i++) {                 String name1 = names.get(i);                 String name2 = names.get(lineCount - 1 - i);                 if (name1.equals(name2)) {                     // If a match is found, print the match details.                     System.out.println("Match found: '" + name1 + "' on lines " + (i + 1) + " and " + (lineCount - i) + ".");                     matches++;                 }             }             if (matches == 0) {                 // If no matches were found, display a message.                 System.out.println("No matches found.");             } else {                 // Display the total number of matches found.                 System.out.println("Total of " + matches + " matches found.");             }         } while (true);         // Close the scanner.         scanner.close();     } }   Test Case 1     Please enter the file name or type QUIT to exit:\n input1.txtENTER Match found: 'Michael' on lines 1 and 8.\n Match found: 'Cassandra' on lines 3 and 6.\n Total of 2 matches found.\n   Test Case 2     Please enter the file name or type QUIT to exit:\n input2.txtENTER Match found: 'Michael' on lines 1 and 9.\n Match found: 'Cassandra' on lines 3 and 7.\n Total of 2 matches found.\n   Test Case 3     Please enter the file name or type QUIT to exit:\n input3.txtENTER File 'input3.txt' is empty.\n   Test Case 4     Please enter the file name or type QUIT to exit:\n input4.txtENTER Match found: 'Michael' on lines 1 and 16.\n Match found: 'Joshua' on lines 2 and 15.\n Match found: 'Cassandra' on lines 3 and 14.\n Match found: 'Joseph' on lines 4 and 13.\n Match found: 'William' on lines 5 and 12.\n Match found: 'Matthew' on lines 6 and 11.\n Match found: 'James' on lines 7 and 10.\n Match found: 'Steven' on lines 8 and 9.\n Total of 8 matches found.\n   Test Case 5     Please enter the file name or type QUIT to exit:\n input5.txtENTER File 'input5.txt' is not found.\n Please re-enter the file name or type QUIT to exit:\n input1.txtENTER Match found: 'Michael' on lines 1 and 8.\n Match found: 'Cassandra' on lines 3 and 6.\n Total of 2 matches found.\n   Test Case 6     Please enter the file name or type QUIT to exit:\n qUiTENTER   Test Case 7     Please enter the file name or type QUIT to exit:\n input5.txtENTER File 'input5.txt' is not found.\n Please re-enter the file name or type QUIT to exit:\n quitENTER

Programming with Microsoft Visual Basic 2017
8th Edition
ISBN:9781337102124
Author:Diane Zak
Publisher:Diane Zak
Chapter4: The Selection Structure
Section: Chapter Questions
Problem 7E
icon
Related questions
Question
100%
JAVA PPROGRAM ASAP
 
Please Modify this program ASAP BECAUSE IT IS MY MIDTERM so it passes all the test cases. It does not pass the test cases when I upload it to Hypergrade. Because RIGHT NOW IT PASSES 1 OUT OF 7 TEST CASES. And dont forget to take out and change the following in the program: 

System.out.println("Program terminated."); because the test case does not need it And change this in the program: Please enter the file name or type QUIT to exit:\n so it reperats once for every test case because it repeats twice in every case as shown in the screenshot. I only need it once. I have provided the failed the test cases and the inputs as a screenshot. 

The program must pass the test case when uploaded to Hypergrade.
 
import java.io.*;
import java.util.ArrayList;
import java.util.Scanner;

public class SymmetricalNameMatcher {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String fileName;

        do {
            // Prompt the user to enter a file name or 'QUIT' to exit.
            System.out.print("Please enter the file name or type QUIT to exit:\n");
            fileName = scanner.nextLine();

            if (fileName.equalsIgnoreCase("QUIT")) {
                // If the user types 'QUIT', terminate the program.
                break;
            }
            File file = new File(fileName);

            if (!file.exists()) {
                // If the file doesn't exist, display an error message and continue to the next iteration.
                System.out.println("File '" + fileName + "' is not found.");
                continue;
            }

            if (file.length() == 0) {
                // If the file is empty, display an error message and continue to the next iteration.
                System.out.println("File '" + fileName + "' is empty.");
                continue;
            }
            ArrayList<String> names = new ArrayList<>();
            int lineCount = 0;

            try (BufferedReader reader = new BufferedReader(new FileReader(file))) {
                String line;
                // Read names from the file and store them in the 'names' ArrayList.
                while ((line = reader.readLine()) != null) {
                    names.add(line);
                    lineCount++;
                }
            } catch (IOException e) {
                e.printStackTrace();
            }

            int matches = 0;

            // Compare names in symmetrical positions.
            for (int i = 0; i < lineCount / 2; i++) {
                String name1 = names.get(i);
                String name2 = names.get(lineCount - 1 - i);

                if (name1.equals(name2)) {
                    // If a match is found, print the match details.
                    System.out.println("Match found: '" + name1 + "' on lines " + (i + 1) + " and " + (lineCount - i) + ".");
                    matches++;
                }
            }

            if (matches == 0) {
                // If no matches were found, display a message.
                System.out.println("No matches found.");
            } else {
                // Display the total number of matches found.
                System.out.println("Total of " + matches + " matches found.");
            }

        } while (true);

        // Close the scanner.
        scanner.close();
    }
}
 

Test Case 1

 
 
Please enter the file name or type QUIT to exit:\n
input1.txtENTER
Match found: 'Michael' on lines 1 and 8.\n
Match found: 'Cassandra' on lines 3 and 6.\n
Total of 2 matches found.\n
 

Test Case 2

 
 
Please enter the file name or type QUIT to exit:\n
input2.txtENTER
Match found: 'Michael' on lines 1 and 9.\n
Match found: 'Cassandra' on lines 3 and 7.\n
Total of 2 matches found.\n
 

Test Case 3

 
 
Please enter the file name or type QUIT to exit:\n
input3.txtENTER
File 'input3.txt' is empty.\n
 

Test Case 4

 
 
Please enter the file name or type QUIT to exit:\n
input4.txtENTER
Match found: 'Michael' on lines 1 and 16.\n
Match found: 'Joshua' on lines 2 and 15.\n
Match found: 'Cassandra' on lines 3 and 14.\n
Match found: 'Joseph' on lines 4 and 13.\n
Match found: 'William' on lines 5 and 12.\n
Match found: 'Matthew' on lines 6 and 11.\n
Match found: 'James' on lines 7 and 10.\n
Match found: 'Steven' on lines 8 and 9.\n
Total of 8 matches found.\n
 

Test Case 5

 
 
Please enter the file name or type QUIT to exit:\n
input5.txtENTER
File 'input5.txt' is not found.\n
Please re-enter the file name or type QUIT to exit:\n
input1.txtENTER
Match found: 'Michael' on lines 1 and 8.\n
Match found: 'Cassandra' on lines 3 and 6.\n
Total of 2 matches found.\n
 

Test Case 6

 
 
Please enter the file name or type QUIT to exit:\n
qUiTENTER
 

Test Case 7

 
 
Please enter the file name or type QUIT to exit:\n
input5.txtENTER
File 'input5.txt' is not found.\n
Please re-enter the file name or type QUIT to exit:\n
quitENTER
 
Input1.txt
Michael
Joshua
Cassandra
Joseph
William
Cassandra
Matthew
Michael
Input2.txt
Michael
Joshua
Cassandra
Joseph
James
William
Cassandra
Matthew
Michael
Input3.txt
Input3.txt is empty
Input4.txt
Michael
Joshua
Cassandra
Joseph
William
Matthew
James
Steven
Steven
James
Matthew
William
Joseph
Cassandra
Joshua
Michael
Transcribed Image Text:Input1.txt Michael Joshua Cassandra Joseph William Cassandra Matthew Michael Input2.txt Michael Joshua Cassandra Joseph James William Cassandra Matthew Michael Input3.txt Input3.txt is empty Input4.txt Michael Joshua Cassandra Joseph William Matthew James Steven Steven James Matthew William Joseph Cassandra Joshua Michael
Test Case 1 Failed Show what's missing
Please enter the file name or type QUIT to exit: \n
input1.txt ENTER
Match found: 'Michael' on lines 1 and 8.\n
Match found: 'Cassandra' on lines 3 and 6. \n
Total of 2 matches found.\n
Test Case 2 Failed Show what's missing
Please enter the file name or type QUIT to exit: \n
input2.txt ENTER
Match found: 'Michael' on lines 1 and 9.\n
Match found: 'Cassandra' on lines 3 and 7.\n
Total of 2 matches found.\n
Test Case 3 Failed Show what's missing
Please enter the file name or type QUIT to exit: \n
input3.txt ENTER
File input3.txt' is empty.\n
Test Case 4 Failed Show what's missing
Please enter the file name or type QUIT to exit: \n
input4.txt ENTER
Match found: 'Michael' on lines 1 and 16. n
Match found: 'Joshua' on lines 2 and 15.\n
Match found: 'Cassandra' on lines 3 and 14. \n
Match found: 'Joseph' on lines 4 and 13. \n
Match found: 'William' on lines 5 and 12.\n
Match found: 'Matthew' on lines 6 and 11. \n
Match found: 'James' on lines 7 and 10. \n
Match found: 'Steven' on lines 8 and 9.\n
Total of 8 matches found.\n
Test Case 5 Failed Show what's missing
Please enter the file name or type QUIT to exit: \n
input5.txt ENTER
File 'input5.txt' is not found.\n
Please re-enter the file name or type QUIT to exit: \n
inputl.txt ENTER
Match found: 'Michael' on lines 1 and 8.\n
Match found: 'Cassandra' on lines 3 and 6. \n
Total of 2 matches found.\n
Test Case 6 Passed!
Please enter the file name or type QUIT to exit: \n
qUiT ENTER
Test Case 7 Failed Show what's missing
Please enter the file name or type QUIT to exit: \n
input5.txt ENTER
File 'input5.txt' is not found.\n
Please re-enter the file name or type QUIT to exit: \n
quit ENTER
Test Case 1 Failed Show what's missing
Please enter the file name or type QUIT to exit: \n
input1.txt ENTER
Match found: 'Michael' on lines 1 and 8.\n
Match found: 'Cassandra' on lines 3 and 6. \n
Total of 2 matches found.\n
Please enter the
Test Case 2
Failed
Please enter the file name or type QUIT to exit: \n
input2.txt ENTER
Match found: 'Michael' on lines 1 and 9.\n
Match found: 'Cassandra' on lines 3 and 7.\n
Test Case 3 Failed
OUTPUT TOO LONG
Total of 2 matches found.\n
Please enter the
Show what's missing
Please enter the file name or type QUIT to exit: \n
input3.txt ENTER
OUTPUT TOO LONG
File input3.txt' is empty.\n
Please e... OUTPUT TOO LONG
Test Case 5 Failed
Show what's missing
Test Case 4 Failed Show what's missing
Please enter the file name or type QUIT to exit: \n
input4.txt ENTER
Match found: 'Michael' on lines 1 and 16.\n
Match found: 'Joshua' on lines 2 and 15. \n
Match found: 'Cassandra' on lines 3 and 14. \n
Match found: 'Joseph' on lines 4 and 13.\n
Match found: 'William' on lines 5 and 12. \n
Match found: 'Matthew' on lines 6 and 11. \n
Match found: 'James' on lines 7 and 10. \n
Match found: 'Steven' on lines 8 and 9.\n
Total of 8 matches found.\n
Please enter the file name or type QUIT t... OUTPUT TOO LONG
Test Case 6
Passed!
Please enter the file name or type QUIT to exit: \n
input5.txt ENTER
Show what's missing
File 'input5.txt' is not found.\n
Please enter the file name or type QUIT to exit: \n
input1.txt ENTER
Match found: 'Michael' on lines 1 and 8. \n
Match found: 'Cassandra' on lines 3 and 6. \n
Total of 2 matches found.\n
Please enter the file name or... OUTPUT TOO LONG
Please enter the file name or type QUIT to exit: \n
qUiT ENTER
Test Case 7 Failed Show what's missing
Please enter the file name or type QUIT to exit: \n
input5.txt ENTER
File 'input5.txt' is not found.\n
Please enter the file name or type QUIT to exit: \n
quit ENTER
Transcribed Image Text:Test Case 1 Failed Show what's missing Please enter the file name or type QUIT to exit: \n input1.txt ENTER Match found: 'Michael' on lines 1 and 8.\n Match found: 'Cassandra' on lines 3 and 6. \n Total of 2 matches found.\n Test Case 2 Failed Show what's missing Please enter the file name or type QUIT to exit: \n input2.txt ENTER Match found: 'Michael' on lines 1 and 9.\n Match found: 'Cassandra' on lines 3 and 7.\n Total of 2 matches found.\n Test Case 3 Failed Show what's missing Please enter the file name or type QUIT to exit: \n input3.txt ENTER File input3.txt' is empty.\n Test Case 4 Failed Show what's missing Please enter the file name or type QUIT to exit: \n input4.txt ENTER Match found: 'Michael' on lines 1 and 16. n Match found: 'Joshua' on lines 2 and 15.\n Match found: 'Cassandra' on lines 3 and 14. \n Match found: 'Joseph' on lines 4 and 13. \n Match found: 'William' on lines 5 and 12.\n Match found: 'Matthew' on lines 6 and 11. \n Match found: 'James' on lines 7 and 10. \n Match found: 'Steven' on lines 8 and 9.\n Total of 8 matches found.\n Test Case 5 Failed Show what's missing Please enter the file name or type QUIT to exit: \n input5.txt ENTER File 'input5.txt' is not found.\n Please re-enter the file name or type QUIT to exit: \n inputl.txt ENTER Match found: 'Michael' on lines 1 and 8.\n Match found: 'Cassandra' on lines 3 and 6. \n Total of 2 matches found.\n Test Case 6 Passed! Please enter the file name or type QUIT to exit: \n qUiT ENTER Test Case 7 Failed Show what's missing Please enter the file name or type QUIT to exit: \n input5.txt ENTER File 'input5.txt' is not found.\n Please re-enter the file name or type QUIT to exit: \n quit ENTER Test Case 1 Failed Show what's missing Please enter the file name or type QUIT to exit: \n input1.txt ENTER Match found: 'Michael' on lines 1 and 8.\n Match found: 'Cassandra' on lines 3 and 6. \n Total of 2 matches found.\n Please enter the Test Case 2 Failed Please enter the file name or type QUIT to exit: \n input2.txt ENTER Match found: 'Michael' on lines 1 and 9.\n Match found: 'Cassandra' on lines 3 and 7.\n Test Case 3 Failed OUTPUT TOO LONG Total of 2 matches found.\n Please enter the Show what's missing Please enter the file name or type QUIT to exit: \n input3.txt ENTER OUTPUT TOO LONG File input3.txt' is empty.\n Please e... OUTPUT TOO LONG Test Case 5 Failed Show what's missing Test Case 4 Failed Show what's missing Please enter the file name or type QUIT to exit: \n input4.txt ENTER Match found: 'Michael' on lines 1 and 16.\n Match found: 'Joshua' on lines 2 and 15. \n Match found: 'Cassandra' on lines 3 and 14. \n Match found: 'Joseph' on lines 4 and 13.\n Match found: 'William' on lines 5 and 12. \n Match found: 'Matthew' on lines 6 and 11. \n Match found: 'James' on lines 7 and 10. \n Match found: 'Steven' on lines 8 and 9.\n Total of 8 matches found.\n Please enter the file name or type QUIT t... OUTPUT TOO LONG Test Case 6 Passed! Please enter the file name or type QUIT to exit: \n input5.txt ENTER Show what's missing File 'input5.txt' is not found.\n Please enter the file name or type QUIT to exit: \n input1.txt ENTER Match found: 'Michael' on lines 1 and 8. \n Match found: 'Cassandra' on lines 3 and 6. \n Total of 2 matches found.\n Please enter the file name or... OUTPUT TOO LONG Please enter the file name or type QUIT to exit: \n qUiT ENTER Test Case 7 Failed Show what's missing Please enter the file name or type QUIT to exit: \n input5.txt ENTER File 'input5.txt' is not found.\n Please enter the file name or type QUIT to exit: \n quit ENTER
Expert Solution
steps

Step by step

Solved in 3 steps with 7 images

Blurred answer
Knowledge Booster
File Input and Output Operations
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
Programming with Microsoft Visual Basic 2017
Programming with Microsoft Visual Basic 2017
Computer Science
ISBN:
9781337102124
Author:
Diane Zak
Publisher:
Cengage Learning