Write a program that reads a list of words. Then, the program outputs those words and their frequencies. The input begins with an integer indicating the number of words that follow. Assume that the list will always contain fewer than 20 words. Ex: If the input is: 5 hey hi Mark hi mark the output is: hey - 1 hi - 2 Mark - 1 hi - 2 mark - 1 Hint: Use two arrays, one array for the strings and one array for the frequencies import java.util.Scanner; public class LabProgram { public static void main(String[] args) { Scanner input = new Scanner(System.in); // Read the number of words int numWords = input.nextInt(); input.nextLine(); // Consume the newline character // Initialize arrays to store words and their frequencies String[] words = new String[numWords]; int[] frequencies = new int[numWords]; // Read and process the words for (int i = 0; i < numWords; i++) { String word = input.next(); boolean found = false; // Check if the word is already in the array for (int j = 0; j < i; j++) { if (word.equalsIgnoreCase(words[j])) { frequencies[j]++; found = true; break; } } // If the word is not found, add it to the arrays if (!found) { words[i] = word; frequencies[i] = 1; } } // Output words and their frequencies for (int i = 0; i < numWords; i++) { if (words[i] != null) { System.out.println(words[i] + " - " + frequencies[i]); } } } }
Write a program that reads a list of words. Then, the program outputs those words and their frequencies. The input begins with an integer indicating the number of words that follow. Assume that the list will always contain fewer than 20 words.
Ex: If the input is:
5 hey hi Mark hi mark
the output is:
hey - 1 hi - 2 Mark - 1 hi - 2 mark - 1
Hint: Use two arrays, one array for the strings and one array for the frequencies
import java.util.Scanner;
public class LabProgram {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// Read the number of words
int numWords = input.nextInt();
input.nextLine(); // Consume the newline character
// Initialize arrays to store words and their frequencies
String[] words = new String[numWords];
int[] frequencies = new int[numWords];
// Read and process the words
for (int i = 0; i < numWords; i++) {
String word = input.next();
boolean found = false;
// Check if the word is already in the array
for (int j = 0; j < i; j++) {
if (word.equalsIgnoreCase(words[j])) {
frequencies[j]++;
found = true;
break;
}
}
// If the word is not found, add it to the arrays
if (!found) {
words[i] = word;
frequencies[i] = 1;
}
}
// Output words and their frequencies
for (int i = 0; i < numWords; i++) {
if (words[i] != null) {
System.out.println(words[i] + " - " + frequencies[i]);
}
}
}
}
![Exception in thread "main" java.util. NoSuchElementException
at java.base/java.util.Scanner.
at java.base/java.util.Scanner.next
at LabProgram.main (LabProgram.java:17)
Input 5 hey hi Mark hi mark
Your output Your program produced no output
Expected output
2:Compare output
hey
hi
Mark 1
hi
mark
Expected output
a
-
I
I
-
cat
and
-
Exception in thread "main" java.util.NoSuchElementException
at java.base/java.util.Scanner. throw For (Scanner.java:937)
at java.base/java.util.Scanner.next (Scanner.java: 1478)
at LabProgram.main (LabProgram.java:17)
2
Input 16 a cat and a dog may fight but a cat and a cat may fight more
Your output Your program produced no output
1
-
4
2
-
-
1
3
NW
a
dog
may
fight 2
but 1
a - 4
2
throwFor (Scanner.java:937)
(Scanner.java: 1478)
1
cat 3
and 2
0/4](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2Fa3dbb91f-777d-47b2-aa94-40b3e17142a5%2F52b74f84-9a5a-4a1c-a43d-6f699210f661%2Fd8pljq_processed.png&w=3840&q=75)
![](/static/compass_v2/shared-icons/check-mark.png)
Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 3 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![C++ Programming: From Problem Analysis to Program…](https://www.bartleby.com/isbn_cover_images/9781337102087/9781337102087_smallCoverImage.gif)
![Microsoft Visual C#](https://www.bartleby.com/isbn_cover_images/9781337102100/9781337102100_smallCoverImage.gif)
![EBK JAVA PROGRAMMING](https://www.bartleby.com/isbn_cover_images/9781337671385/9781337671385_smallCoverImage.jpg)
![C++ Programming: From Problem Analysis to Program…](https://www.bartleby.com/isbn_cover_images/9781337102087/9781337102087_smallCoverImage.gif)
![Microsoft Visual C#](https://www.bartleby.com/isbn_cover_images/9781337102100/9781337102100_smallCoverImage.gif)
![EBK JAVA PROGRAMMING](https://www.bartleby.com/isbn_cover_images/9781337671385/9781337671385_smallCoverImage.jpg)