In this program, you will implement a Pig Latin converter that reads lines from a file and converts them to Pig Latin. The program should first ask the user to enter a filename, read lines from it, and display the corresponding lines (along with the originals) containing capitalized Pig Latin words with single spaces between the words (irrespective or how many spaces there were between successive words in the input lines). An example run is shown at the end of this document for your convenience.

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
can you show me this in python
Problem Description:
In this program, you will implement a Pig Latin converter that reads lines from a file and converts
them to Pig Latin. The program should first ask the user to enter a filename, read lines from it,
and display the corresponding lines (along with the originals) containing capitalized Pig Latin
words with single spaces between the words (irrespective or how many spaces there were
between successive words in the input lines). An example run is shown at the end of this
document for your convenience.
You must use at least two functions (one for testing whether a word is valid, and another one to
convert a valid word to pig Latin) in addition to the main function. Name the functions
'isValidWord' and 'toPigLatin', respectively. The program should only convert valid words to pig
Latin, where a valid word is defined as a sequence of only alphabetic characters. All invalid words
should be kept unchanged. When converting a valid word to pig Latin, use the following rules
(can also be found at: https://en.wikipedia.org/wiki/Pig Latin):
1. If the word starts with a vowel, add a 'way' at the end.
Examples:
is -> isway
am -> amway
one -> oneway
2. If the word starts with one or more consonants, move all the consonants appearing before
the initial vowel to the end of the word, and add an 'ay' at the end (if there is no vowel in the
word, only add an 'ay' at the end).
Examples:
pig -> igpay
latin -> atinlay
cheers -> eerschay
smile -> ilesmay
brb -> brbay
Transcribed Image Text:Problem Description: In this program, you will implement a Pig Latin converter that reads lines from a file and converts them to Pig Latin. The program should first ask the user to enter a filename, read lines from it, and display the corresponding lines (along with the originals) containing capitalized Pig Latin words with single spaces between the words (irrespective or how many spaces there were between successive words in the input lines). An example run is shown at the end of this document for your convenience. You must use at least two functions (one for testing whether a word is valid, and another one to convert a valid word to pig Latin) in addition to the main function. Name the functions 'isValidWord' and 'toPigLatin', respectively. The program should only convert valid words to pig Latin, where a valid word is defined as a sequence of only alphabetic characters. All invalid words should be kept unchanged. When converting a valid word to pig Latin, use the following rules (can also be found at: https://en.wikipedia.org/wiki/Pig Latin): 1. If the word starts with a vowel, add a 'way' at the end. Examples: is -> isway am -> amway one -> oneway 2. If the word starts with one or more consonants, move all the consonants appearing before the initial vowel to the end of the word, and add an 'ay' at the end (if there is no vowel in the word, only add an 'ay' at the end). Examples: pig -> igpay latin -> atinlay cheers -> eerschay smile -> ilesmay brb -> brbay
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps with 4 images

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY