Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Please Write C++ PROGRAM : That will write a program that initially prompts the user for a file name. If the file is not found,

Please Write C++ PROGRAM :

That will write a program that initially prompts the user for a file name. If the file is not found, an error message is output, and the program terminates. Otherwise, the program prints each token in the file, and the number of times it appeared, in a well formatted manner. To accomplish all this, do the following:

- Open the file - the user must be prompted and a file name input. DO NOT hardcode a file name.

- Read the words in the file, placing them in an array of struct with capacity I 00, where each struct has a string (the word) and an int (number of occurrences)

- Sort the array, eliminating duplicates

- Report the results

- You must write appropriate functions for each task. At minimum, you must write a function for each of the following:

Open the file:

o Pass in an ifstream (must be a reference argument [what type of parameter is it?]). The function prompts the user and, if the file is found, it returns true and the ifstream will be a handle for that text file. Otherwise the function returns false , and the argument is assumed to be undefined.

Populate the array of struct with the words in the file:

o Pass in two reference arguments, the ifstrcam, and the l 00 element array of word/count structs. When the function completes, the array will hold the words in the file.

Output results:

o Pass in the variables that bold the file name and the word/count array. Use this data to

produce the desired ouput, which should be appropriately fonnatted.

Sort an array of structs (the name/int pairs), eliminating duplicates:

o Pass in the array of struct, and the number of elements in the array. The function sorts the array, in ascending order of words, eliminating duplicates and tabulating counts as it goes. It definitely uses other functions for specific purposes, e.g. identifying duplicate tokens and swapping structs.

Increment the counter member of a struct that holds a word and its multiplicity:

o Pass in a single struct; it will be an import/export parameter. Simply increment its counter member.

----------------------------------------------------------------------------

Notes:

A word, or token, is whatever is read using the >> operator. A word followed by a period is distinct from the same word without the period. Words are also case sensitive, i.e. heLLo is not equal to Hello.

When a word is placed into the array of struct, its counter is initially 1.

When the array reaches capacity:

If there aren't 100 unique words already in the array, run the sort function to eliminate duplicates.

If the file has 100 unique words, then after the tooth unique word is added to the array, only repeats will be tabulated. New tokens will be discarded.

While several functions are required, other functions should be written as well.

No function..should handle multiple tasks on its own. Non-modular designs will be penalized.

In sorting, if the word being placed is a duplicate, the already placed word must have its counter incremented, and the duplicate must be removed from the array.

- The program must be well written, properly indented, and commented

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

More Books

Students also viewed these Databases questions

Question

6. Describe to a manager the different types of distance learning.

Answered: 1 week ago

Question

1. Explain how new technologies are influencing training.

Answered: 1 week ago