Create a program to translate a single word at a time from


Assignment- Pig Elvish and Largest Number

Goals

• For loops
• While loops
• String processing and manipulation

Part 1 - Igpén Lvísheá (Pig Elvish)

• Background

o Pig Elvish is a gibberish (made-up) language similar to Pig Latin, but designed to sound like the Elvish language spoken by the Elves in Lord of the Rings. (example of Elvish)

o To "translate" an English word into Pig Elvish, follow these rules (adapted from this site):

1. Take the first letter of the word and move it to the end of the word

2. If the word is four letters or more, append a random vowel to the end of the word (aeiou)

3. If the word is three letters or fewer, append "en" to the end of the word

4. Change all k's to c's

5. If there is an e at the end of the word, replace it with ë (e with an umlaut)

6. Handle capital letters properly:

• If the first letter of the English word is capitalized, make it lower case when you append it to the end

• Then capitalize the new first letter of the Pig Elvish word

o Tolkien   Olcienti
o Trojan    Rojantu

o Examples:

• a                     aen
• while                hilewa
• python             ythonpë
• Quick               Uiccqi

o Complete these two optional steps

7. Randomly add accents (áéíóú) some vowels

• In order to randomly add accents to vowels in a word, you can use the random.choice() function (see hint below )

• Examples:

- a aén
- while hilewá

• python ythónpë

- quick uíccqí

8. Reverse the program and create a Pig Elvish to English translator following the same general structure.

• Question (include answer in your comments): Is this translation complete reversible? That is, can you be guaranteed to be back the original word given only the translated word? Explain

• Requirements

o Create a program to translate a single word at a time from English into Pig Elvish

• Important: You are only required to implement steps 1-6 above

o Using a while loop, first ask the user enter a word in English o "Translate" the user's word into Elvish
o Display the word in Elvish
o Ask the user if they want to continue

• If yes, ask them for another word to translate

• If no, print a goodbye message in Elvish o Hint #1: Strings have methods that may be useful

• someString.isupper() checks whether all the letters in the string are uppercase and returns a Boolean: True if the string is all uppercase, or False otherwise.

- For example,

# consider that letter is a string

if letter.isupper() == True: # letter is uppercase else:

# letter is lowercase

• someString.capitalize() returns a copy of the string with only the first letter capitalized

• For example,

# consider that letter is a string capitalLetter = letter.capitalize()

- someString.replace(old, new) returns a copy of the string with all of the old letters replaced by the new letter

• For example,

# consider someString = "hello world"

someString = someString.replace("l", "x") # now someString = "hexxo worxd"

o Hint #2 for Extra Credit: If you have a sequence (e.g. a string) and you want to randomly select one element from the sequence, you can use the random.choice() function

For example,

import random
message = "hello world"
letter = random.choice(message)
# letter now holds a random character from message.

Request for Solution File

Ask an Expert for Answer!!
Computer Engineering: Create a program to translate a single word at a time from
Reference No:- TGS02648593

Expected delivery within 24 Hours