(Answer using python 3.6) #Problem 1 This problem provides practice using a whil
ID: 3597841 • Letter: #
Question
(Answer using python 3.6)
#Problem 1
This problem provides practice using a while True loop.
Write a function named twoWords that gets and returns two words from a user. The first word is of a specified length, and the second word begins with a specified letter.
The function twoWords takes two parameters:
1. an integer, length, that is the length of the first word and
2. a character, firstLetter, that is the first letter of the second word. The second word may begin with either an upper or lower case instance of firstLetter.
The function twoWords should return the two words in a list. Use a while True loop and a break statement in the implementation of twoWords.
The following is an example of the execution of twoWords:
print(twoWords(4, 'B'))
Enter a 4-letter word please: two
Enter a 4-letter word please: one
Enter a 4-letter word please: four
Enter a word beginning with B please: apple
Enter a word beginning with B please: pear
Enter a word beginning with B please: banana ['four', 'banana']
#Problem 2
Write a function named twoWordsV2 that has the same specification as Problem 1, but implement it using while and not using break. (Hint: provide a different boolean condition for while.)
Since only the implementation has changed, and not the specification, for a given input the output should be identical to the output in Problem 1.
Explanation / Answer
def twoWords(length, firstLetter):
words = []
while True:
word1 = input("Enter a 4-letter word please: ")
if len(word1) == length:
words.append(word1)
break
while True:
word2 = input("Enter a word beginning with " + firstLetter + " please: ")
c = word2[0]
if c.lower() == firstLetter.lower():
words.append(word2)
break
return words
def twoWordsV2(length, firstLetter):
words = []
flag = True
while flag:
word1 = input("Enter a 4-letter word please: ")
if len(word1) == length:
words.append(word1)
flag = False
flag = True
while flag:
word2 = input("Enter a word beginning with " + firstLetter + " please: ")
c = word2[0]
if c.lower() == firstLetter.lower():
words.append(word2)
flag = False
return words
print(twoWordsV2(4, "B"))
# copy pastable code link: https://paste.ee/p/X0t1C
'''
Sample output:
Enter a 4-letter word please: one
Enter a 4-letter word please: two
Enter a 4-letter word please: four
Enter a word beginning with B please: apple
Enter a word beginning with B please: pear
Enter a word beginning with B please: banana
['four', 'banana']
'''
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.