私はプログラミングが初めてで、Pythonを使用して入門クラスを受講して学習しようとしています。
私の任務の 1 つでは、次のことを行う必要があります。
ランダムに生成された 2 桁の整数とユーザーが生成した 2 桁の整数を比較します。
- ランダムな整数とユーザーが生成した整数の両方が一致する場合、印刷 blah1
- ユーザーが生成した整数が、逆にランダムに生成された整数と同じ 2 桁である場合は、blah2 を出力します。
- ユーザーが生成した整数に、ランダムに生成された整数と同じ数字が 1 桁ある場合は、blah3 を出力します。
これまでのところ、基本的なこと (演算子、if
/ else
/ elif
、while
ループ、印刷、文字列、整数)しか学習していません。
ランダムに 2 桁を割り当て、それらを文字列に変換し、それらを 2 桁の文字列に連結するものを思いつきました。ここから、elif
考えられる各条件に一致するステートメントを使用しました。
残念ながら、それは必須ではありません。比較を行うときは、2 桁の整数を使用する必要があります。残念ながら、整数の一部を比較する方法、または整数を教えられたものと逆にする方法はまったくわかりません。
今、私はこれを解決してくれる人を探していません。私が持っている基本的な知識でこれについてどのように考えるべきかについてのヒントまたは提案の助けが欲しい.
どんな助けでも大歓迎です。
私が書いたコードを含めました。
# homework 2
# problem 1
#
# lottery guessing program
#
# the program randomly generates a two-digit number, prompts the user to enter a two-digit number,
# and determines whether the user wins according to the following rules:
#
# 1. if both digits match in the right order, you will win $10,000.
# 2. if both digits match, but in the reversed order, you will win $3,000.
# 3. if you match one digit in either place, you will win $1,000
#imports
import random
#rules
print("guess a number. if both digits match in the right order, you will win $10,000."\
"\nif both digits match, but in the reversed order, you will win $3,000." \
"\nif you match one digit in either place, you will win $1,000." \
"\nif you don't match any digits, you do not win anything.")
# random variables
rand_num1 = str(random.randint(1,9))
rand_num2 = str(random.randint(1,9))
#ask user for number
user_num1 = input("what is your first number? ")
user_num2 = input("what is your second number? ")
#for testing purposes, if testing, comment out the previous two lines
#combd_num = (str(rand_num1)) + (str(rand_num2))
#revsd_num = (str(rand_num2)) + (str(rand_num1))
#print(rand_num1)
#print(rand_num2)
#print(combd_num)
#print(revsd_num)
#user_num1 = input("what is your first number? ")
#user_num2 = input("what is your second number? ")
#ucomb_num = (str(user_num1)) + (str(user_num2))
#output the numbers
print("the number is, ", (rand_num1 + rand_num2),"\
\nyour number is, ", (user_num1 + user_num2), sep="")
#elif statement
if (user_num1 + user_num2) == (rand_num1 + rand_num2):
print("you guessed the exact number. you win $10,000!")
elif (user_num2 + user_num1) == (rand_num1 + rand_num2):
print("you guessed both digits but in reverse. you win $3,000!")
elif user_num1 == rand_num1 and user_num2 != rand_num2:
print("you guessed one digit right. you win $1,000!")
elif user_num1 == rand_num2 and user_num2 != rand_num2:
print("you guessed one digit right. you win $1,000!")
elif user_num2 == rand_num1 and user_num1 != rand_num2:
print("you guessed one digit right. you win $1,000!")
elif user_num2 == rand_num2 and user_num1 != rand_num2:
print("you guessed one digit right. you win $1,000!")
else:
print("sorry, you didn't guess the right number.")