CS 280
Spring 2021
Recitation Assignment 4
Fe
uary 15, 2021
Due Date: Wednesday, Fe
uary 17, 2021, 23:59
Total Points: 6
Write a C++ program that creates a simple directory for the occu
ences of printable characters
ead from an input file. The program should read from a file name specified in the command line
as an argument, However, if no file name is provided, the program should print on a new line "No
file is found", and exit. If the file cannot be opened, print on a new line "File cannot be opened: ",
followed by the file name, and exit. The program should read from the file words until the end of
file. If the input file is empty, print out on a new line the message "File is empty." and then exit.
A word is defined as a contiguous number of non-whitespace characters separated by whitespace.
The program should keep a record of the number of occu
ences of each letter, decimal digit (0-
9), and any non-alphanumeric characters (e.g., ‘.’, ‘,’, ‘@’, etc.) in a directory built using the
map> container. In order to avoid counting uppercase and lowercase letters, all letters should be
converted to uppercase. After all input has been processed, the program should
• Print each decimal digit and letter that was seen the largest number of times on a line
y itself and the number of times it was seen in the file.
• Print each printable character read from the file and the number of times it was seen.
The character should be printed in order.
• Print the number of non-alphanumeric characters that were seen in the file.
For example, with an input file of the following contents:
The results are as shown below:
Digits of Largest number of occu
ences: 0: 8
Digits of Largest number of occu
ences: 7: 8
Letters of Largest number of occu
ences: E: 43
An International Standard Book Number (ISBN) is a code of 10 characters, refe
ed to as ISBN-10,
separated by dashes such as XXXXXXXXXXAn ISBN-10 consists of four parts: a group code, a
publisher code,
a code that uniquely identifies the book among those published by a particular publisher, and a check
character.
The check character is used to validate an ISBN. For the ISBN XXXXXXXXXX, the group code is 0,
which identifies the book as one from an English-speaking country. The publisher code 7637 is for
"Jones and Bartlett Publishers".
List of characters seen in the file and their number of
occu
ences:
": 2
(: 1
): 1
,: 7
-: 9
.: 5
0: 8
1: 3
3: 3
6: 3
7: 8
8: 4
9: 2
:: 1
A: 37
B: 17
C: 21
D: 18
E: 43
F: 9
G: 5
H: 23
I: 29
J: 1
K: 6
L: 11
M: 3
N: 26
O: 29
P: 11
Q: 1
R: 28
S: 35
T: 28
U: 15
V: 1
W: 1
Y: 4
Number of non-alphanumeric characters seen in the file: 7
Hints:
1. Use
functions such as: isdigit(), isalpha(), isspace(), and toupper().
2. Include the