# functions go here # Checks that users have entered a valid option based on list def string_checker(question, valid_ans=('yes', 'no')): error = f"Please enter a valid option from the following list: {valid_ans}" while True: # Get user response and make sure it's lowercase user_response = input(question).lower() for item in valid_ans: # check if the user response is a word in the list if item == user_response: return item # check if the user response is the same as # the first letter of an item in the list elif user_response == item[0]: return item # print error if the user does not enter something that is valid print(error) print() # Displays instructions def instructions(): """Prints instructions""" print(""" *** Instructions *** To begin, choose the number of questions that you want (or press for infinite mode). Then, you will be asked what a power or square root of a number equals. Enter your answer and ensure that it's rounded to two decimal places. (please be very careful with your rounding) At the end of the quiz, you will be provided with your score. Try and improve upon your previous score when you play. Press to end the game at anytime. Good luck! """) # Main routine print() print("Powers and Square Roots quiz") print() # ask the user if they want to see the instructions (check if they say yes / no) want_instructions = string_checker("Do you want to see the instructions? ") # Display the instructions if the user wants to see them if want_instructions == "yes": instructions() print() print("Program continues")