The Assignment Assume you're trying to build an e-mailing list by analyzing some random text data pulled from the internet for your unethical Email Spam Business. Your task is to write a C++ program that asks the user to enter a file for processing. You should then test each "word" in the file to determine if the "word" is an email address. The program then outputs, to a separate file called results.out, one per line, every "real" e-mail address contained inside the file as it runs across them. For this assignment, our "words" are white space delimited strings within the file, and if a "word" has an embedded commercial at sign (@) inside it, we shall consider it a possible e-mail address. All possible email addresses will need to be further processed to determine "real" email addresses contained in the data file. To determine if it a "real" email address and worthy of your company's spam mailing list, you will need to process the emails a little further. . First, you should trim any trailing commas (). Thus, the string "BillyBob@mtsu.edu," must appear in the output file as "BillyBob@mtsu.edu" with the trailing comma removed. Only commas at the end of a string are considered trailing; • do not remove non-trailing commas. • Also, some email addresses may contain angle brackets (aka chevrons ) surrounding them. These should be removed; thus, the string "GhostDiet@BooLean.bit," would become "Ghost Diet@BooLean.bit" with the angle brackets removed. ● Finally, double check that a period (.) appears in the email address after the @ symbol. It does not matter where/how many, just that a period exists after the @symbol in a word. • Aside from these three bits of processing, do not worry about any other punctuation; only remove trailing commas, the preceding angle bracket <, the closing angle bracket >, and check for the presence of a period in the second half of the email. These processed email addresses will be our "real" emails.
The Assignment Assume you're trying to build an e-mailing list by analyzing some random text data pulled from the internet for your unethical Email Spam Business. Your task is to write a C++ program that asks the user to enter a file for processing. You should then test each "word" in the file to determine if the "word" is an email address. The program then outputs, to a separate file called results.out, one per line, every "real" e-mail address contained inside the file as it runs across them. For this assignment, our "words" are white space delimited strings within the file, and if a "word" has an embedded commercial at sign (@) inside it, we shall consider it a possible e-mail address. All possible email addresses will need to be further processed to determine "real" email addresses contained in the data file. To determine if it a "real" email address and worthy of your company's spam mailing list, you will need to process the emails a little further. . First, you should trim any trailing commas (). Thus, the string "BillyBob@mtsu.edu," must appear in the output file as "BillyBob@mtsu.edu" with the trailing comma removed. Only commas at the end of a string are considered trailing; • do not remove non-trailing commas. • Also, some email addresses may contain angle brackets (aka chevrons ) surrounding them. These should be removed; thus, the string "GhostDiet@BooLean.bit," would become "Ghost Diet@BooLean.bit" with the angle brackets removed. ● Finally, double check that a period (.) appears in the email address after the @ symbol. It does not matter where/how many, just that a period exists after the @symbol in a word. • Aside from these three bits of processing, do not worry about any other punctuation; only remove trailing commas, the preceding angle bracket <, the closing angle bracket >, and check for the presence of a period in the second half of the email. These processed email addresses will be our "real" emails.
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Topic Video
Question
![9: > Console X
PI
it file
p
.){
);
se();
History
Shell *
Instructions x +
matter where/how many, just that a period exists after the @symbol in a word.
. Aside from these three bits of processing, do not worry about any other punctuation; only remove trailing
commas, the preceding angle bracket <, the closing angle bracket >, and check for the presence of a
period in the second half of the email. These processed email addresses will be our "real" emails.
Program Requirements and Implementation Notes
4
No word will contain more than one @symbol in the file.
• Do NOT remove <> that may appear in the middle of words
. Do not remove any comma's in the middle of words (only remove the trailing ones)
• Ask the user to enter the filename for input.
• Write all resulting email output so a separate file called results.out
You will need to create your own data files to test your program and make sure it works. Try using a list of
fake emails that fit the rules described in the background.
Helpful Hints
• You may find some of the <cctype> character testing functions and string member functions found in
Chapter 10 of the Textbook. Tables 10-1 (section 10.1), 10-2 (section 10.2), and 10-9 (section 10.7) of
the textbook useful in programming the solution to this problem. These are also on the course calendar in
the Chapter 10 slides.
• In particular, the .find(str, pos) and .substr(start, len) member functions of the string class
from section 10.7 (table 10-9) might be helpful.
. Don't forget to close the files when you are done with them.](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2Fd1b65600-d204-4706-9da4-f66117221fbc%2F3f9710b7-a74a-4b8a-bb2c-c903fbf67a3e%2Fmjc62d_processed.jpeg&w=3840&q=75)
Transcribed Image Text:9: > Console X
PI
it file
p
.){
);
se();
History
Shell *
Instructions x +
matter where/how many, just that a period exists after the @symbol in a word.
. Aside from these three bits of processing, do not worry about any other punctuation; only remove trailing
commas, the preceding angle bracket <, the closing angle bracket >, and check for the presence of a
period in the second half of the email. These processed email addresses will be our "real" emails.
Program Requirements and Implementation Notes
4
No word will contain more than one @symbol in the file.
• Do NOT remove <> that may appear in the middle of words
. Do not remove any comma's in the middle of words (only remove the trailing ones)
• Ask the user to enter the filename for input.
• Write all resulting email output so a separate file called results.out
You will need to create your own data files to test your program and make sure it works. Try using a list of
fake emails that fit the rules described in the background.
Helpful Hints
• You may find some of the <cctype> character testing functions and string member functions found in
Chapter 10 of the Textbook. Tables 10-1 (section 10.1), 10-2 (section 10.2), and 10-9 (section 10.7) of
the textbook useful in programming the solution to this problem. These are also on the course calendar in
the Chapter 10 slides.
• In particular, the .find(str, pos) and .substr(start, len) member functions of the string class
from section 10.7 (table 10-9) might be helpful.
. Don't forget to close the files when you are done with them.
![tory O
The Assignment
Assume you're trying to build an e-mailing list by analyzing some random text data pulled from the internet
for your unethical Email Spam Business. Your task is to write a C++ program that asks the user to enter a file
for processing. You should then test each "word" in the file to determine if the "word" is an email address.
The program then outputs, to a separate file called results.out, one per line, every "real" e-mail address
contained inside the file as it runs across them.
across them.
For this assignment, our "words" are white space delimited strings within the file, and if a "word" has an
embedded commercial at sign (@) inside it, we shall consider it a possible e-mail address. All possible email
addresses will need to be further processed to determine "real" email addresses contained in the data file.
To determine if it a "real" email address and worthy of your company's spam mailing list, you will need to
process the emails a little further.
• First, you should trim any trailing commas (). Thus, the string "Billy Bob@mtsu.edu," must appear in the
output file as "BillyBob@mtsu.edu" with the trailing comma removed. Only commas at the end of a string
are considered trailing;
• do not remove non-trailing commas.
• Also, some email addresses may contain angle brackets (aka chevrons surrounding them. These
should be removed; thus, the string "GhostDiet@BooLean.bit," would become "GhostDiet@BooLean.bit"
with the angle brackets removed.
. Finally, double check that a period (.) appears in the email address after the @ symbol. It does not
matter where/how many, just that a period exists after the @symbol in a word.
. Aside from these three bits of processing, do not worry about any other punctuation; only remove trailing
commas, the preceding angle bracket <, the closing angle bracket >, and check for the presence of a
period in the second half of the email. These processed email addresses will be our "real" emails.
;](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2Fd1b65600-d204-4706-9da4-f66117221fbc%2F3f9710b7-a74a-4b8a-bb2c-c903fbf67a3e%2Fbi2d9p_processed.jpeg&w=3840&q=75)
Transcribed Image Text:tory O
The Assignment
Assume you're trying to build an e-mailing list by analyzing some random text data pulled from the internet
for your unethical Email Spam Business. Your task is to write a C++ program that asks the user to enter a file
for processing. You should then test each "word" in the file to determine if the "word" is an email address.
The program then outputs, to a separate file called results.out, one per line, every "real" e-mail address
contained inside the file as it runs across them.
across them.
For this assignment, our "words" are white space delimited strings within the file, and if a "word" has an
embedded commercial at sign (@) inside it, we shall consider it a possible e-mail address. All possible email
addresses will need to be further processed to determine "real" email addresses contained in the data file.
To determine if it a "real" email address and worthy of your company's spam mailing list, you will need to
process the emails a little further.
• First, you should trim any trailing commas (). Thus, the string "Billy Bob@mtsu.edu," must appear in the
output file as "BillyBob@mtsu.edu" with the trailing comma removed. Only commas at the end of a string
are considered trailing;
• do not remove non-trailing commas.
• Also, some email addresses may contain angle brackets (aka chevrons surrounding them. These
should be removed; thus, the string "GhostDiet@BooLean.bit," would become "GhostDiet@BooLean.bit"
with the angle brackets removed.
. Finally, double check that a period (.) appears in the email address after the @ symbol. It does not
matter where/how many, just that a period exists after the @symbol in a word.
. Aside from these three bits of processing, do not worry about any other punctuation; only remove trailing
commas, the preceding angle bracket <, the closing angle bracket >, and check for the presence of a
period in the second half of the email. These processed email addresses will be our "real" emails.
;
Expert Solution
![](/static/compass_v2/shared-icons/check-mark.png)
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution!
Trending now
This is a popular solution!
Step by step
Solved in 4 steps with 2 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
Knowledge Booster
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.Recommended textbooks for you
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
![C How to Program (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133976892/9780133976892_smallCoverImage.gif)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
![Database Systems: Design, Implementation, & Manag…](https://www.bartleby.com/isbn_cover_images/9781337627900/9781337627900_smallCoverImage.gif)
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
![Programmable Logic Controllers](https://www.bartleby.com/isbn_cover_images/9780073373843/9780073373843_smallCoverImage.gif)
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education