
Using Python:
Step 1: Prompt the user to enter a string of their choosing. Store the text in a string. Output the string.
Step 2: Implement the print_menu() function to print the following command menu.
Sample output:
MENU
c - Number of non-whitespace characters
w - Number of words
f - Fix capitalization
r - Replace punctuation
s - Shorten spaces
q - Quit
Step 3: Implement the execute_menu() function that takes 2 parameters: a character representing the user's choice and the user provided sample text. execute_menu() performs the menu options, according to the user's choice, by calling the appropriate functions described below.
Step 4:
In the main program, call print_menu() and prompt for the user's choice of menu options for analyzing/editing the string. Each option is represented by a single character.
If an invalid character is entered, continue to prompt for a valid choice. When a valid option is entered, execute the option by calling execute_menu(). Then, print the menu and prompt for a new option. Continue until the user enters 'q'.
Step 5: Implement the get_num_of_non_WS_characters() function. get_num_of_non_WS_characters() has a string parameter and returns the number of characters in the string, excluding all whitespace. Call get_num_of_non_WS_characters() in the execute_menu() function, and then output the returned value.
Sample output with steps 1-5:
Enter a sample text: we'll continue our quest in space. there will be more shuttle flights and more shuttle crews and, yes, more volunteers, more civilians, more teachers in space. nothing ends here; our hopes and our journeys continue!
You entered: we'll continue our quest in space. there will be more shuttle flights and more shuttle crews and, yes, more volunteers, more civilians, more teachers in space. nothing ends here; our hopes and our journeys continue!
MENU
c - Number of non-whitespace characters
w - Number of words
f - Fix capitalization
r - Replace punctuation
s - Shorten spaces
q - Quit
Choose an option: c
Number of non-whitespace characters: 181
Step 6: Implement the get_num_of_words() function. get_num_of_words() has a string parameter and returns the number of words in the string. Hint: Words end when a space is reached except for the last word in a sentence. Call get_num_of_words() in the execute_menu() function, and then output the returned value.
Step 7: Implement the fix_capitalization() function. fix_capitalization() has a string parameter and returns an updated string, where lowercase letters at the beginning of sentences are replaced with uppercase letters. fix_capitalization() also returns the number of letters that have been capitalized. Call fix_capitalization() in the execute_menu() function, and then output the number of letters capitalized followed by the edited string.
Sample Output:
Number of letters capitalized: 3
Edited text: We'll continue our quest in space. There will be more shuttle flights and more shuttle crews and, yes; more volunteers, more civilians, more teachers in space. Nothing ends here; our hopes and our journeys continue!
Step 8: Implement the replace_punctuation() function. replace_punctuation() has a string parameter and two keyword argument parameters exclamation_count and semicolon_count. replace_punctuation() updates the string by replacing each exclamation point (!) character with a period (.) and each semicolon (;) character with a comma (,). replace_punctuation() also counts the number of times each character is replaced and outputs those counts. Lastly, replace_punctuation() returns the updated string. Call replace_punctuation() in the execute_menu() function, and then output the edited string.
Sample Output:
Punctuation replaced e
xclamation_count: 1
semicolon_count: 2
Edited text: we'll continue our quest in space. there will be more shuttle flights and more shuttle crews and, yes, more volunteers, more civilians, more teachers in space. nothing ends here, our hopes and our journeys continue.
Step 9: Implement the shorten_space() function. shorten_space() has a string parameter and updates the string by replacing all sequences of 2 or more spaces with a single space. shorten_space() returns the string. Call shorten_space() in the execute_menu() function, and then output the edited string.
Sample Output:
Edited text: we'll continue our quest in space. there will be more shuttle flights and more shuttle crews and, yes, more volunteers, more civilians, more teachers in space. nothing ends here; our hopes and our journeys continue!

Trending nowThis is a popular solution!
Step by stepSolved in 3 steps with 5 images

- This is my flashcard problem I need to come up with an algorithm and a python program, I have the dictionaries as txt files The program should allow the user to ask for a word list entry. In response, the program should randomly pick an entry from the word list. It should display the English word and invite the user to enter the French equivalent. After the user enters their answer, the program should check the answer. If it is correct the program should tell the user; otherwise, if the answer is wrong the program should tell the user and inform them of the correct answer. The user should be able to repeatedly ask for an entry and also have the option to quit the program instead of seeing another entry.arrow_forwardIn PYTHON Using one of the loop construct draw:- Ten dashed Horizontal lines- Each line of length 150 units (or pixels)- All lines aligned at the same left vertical margin- Lines 10 units apart each other Note- Set the length of solid segment to 10 units- Set the length of the non-visible segment to 5 units Assumption- Use of Turtle library (i will check the answer, it has to be correct)arrow_forwardModify task2.c so it will read from standard input and translate the contents just like the filter tr Modify this program so it work like trHint:if you run your program:./task2 abc ABCthen argv[1] is string "abc" argv[2] is the string "ABC" */ #include <stdio.h>#include <unistd.h>#include <string.h> int main(int argc, char *argv[]){ char c; while(1){ int r = read(0,&c,1); if(r==0) break; write(1,&c, 1); } return 0;}arrow_forward
- Create a program that generates an eight-digit account number. The program should generate eight random numbers, each in the range of 0 to 9, and assign each number to a list element. Then write another loop that displays the entire contents of the list without the []. use pythonarrow_forwardEx: Use getline() to get a line of user input into a string. Output the line. Enter text: IDK if I'll go. It's my BFF's birthday. You entered: IDK if I'll go. It's my BFF's birthday. Search the string (using find()) for common abbreviations and print a list of each found abbreviation along with its decoded meaning. Ex: Enter text: IDK if I'll go. It's my BFF's birthday. You entered: IDK if I'll go. It's my BFF's birthday. BFF: best friend forever IDK: I don't know Support these abbreviations: BFF -- best friend forever IDK -- I don't know . JK -- just kidding TMI -- too much information TTYL-talk to you later 1 #include 2 // FIXME include the string Library 3 using namespace std; 4 5 int main() { 6 7 8 9 10 } /* Type your code here. */ return 0; main.cpparrow_forwardCreate a program that starts with an empty list, prompts the user three times to enter their favorite game, and then prints out the output using the pop() method. Expected Output What is your favorite game? The Legend What is your second favorite game? Teen What is your third favorite game? Donke One of your favorite games is Donkey Ko One of your favorite games is Teenage M One of your favorite games is The Legenarrow_forward
- In python Create a list from the items in the Bonjoir le monde! String and assign it to the liste variable. Hint: use the list function to built a liste from an it érable sequence (e.g. a string).arrow_forward"Simon Says" is a memory game where "Simon" outputs a sequence of 10 characters (R, G, B, Y) and the user must repeat the sequence. Create a for loop that compares the two strings starting from index 0. For each match, add one point to userScore. Upon a mismatch, exit the loop using a break statement. Assume simonPattern and userPattern are always the same length. Ex: The following patterns yield a userScore of 4:simonPattern: RRGBRYYBGY userPattern: RRGBBRYBGY #include <iostream>#include <string>using namespace std; int main() { string simonPattern; string userPattern; int userScore; int i; userScore = 0; cin >> simonPattern; cin >> userPattern; /* Your solution goes here */ cout << "userScore: " << userScore << endl; return 0;arrow_forwardLoops: Based on the following code segment: int val = 10; String s = String.format("%d", val - 5); while (val < 25) { s +=String.format(",%3d", val); val += 5; } System.out.println(s); Select the code using a for loop that produces identical output: String s = String.format("%d", val); for (int val = 10; val < 25; val + 5) { s += String.format(",%3d", val); } System.out.println(s); Strings = String.format("%d", 5); for (int val = 10; val <= 25; val += 5) { s +=String.format(",%3d", val); } System.out.println(s); String s = String.format("%d", 5); for (int val s += String.format(",%3d", val); } == 10; val < 25; val + 5) { System.out.println(s); None of these will produce the same output. String s = String.format("%d", 5); for (int val = 10, val < 25, val += 5) { s += String.format(",%3d", val); } System.out.println(s); Strings = String.format("%d", 5); for (int val = 10; val < 25; val += 5) { s +=String.format(",%3d", val); } System.out.println(s); String s = String.format("%d", 5); for…arrow_forward
- Python code. Please write your own code. Thank you!arrow_forwardPlease help me with this in python. I have attached question and output below.arrow_forwardTake input a string and create a new string where 'if' is added to the front of the input string. If the string already begins with 'if', return the string unchanged.Sample Input:"if else""else"Sample Output:if elseif elsearrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education





