Pythonクラスに、苦労している割り当てがあります。
プログラム
基本的な前提は次のとおりです。宝くじプログラム。プログラムはランダムに2桁の数字を生成し、ユーザーに2桁の数字の入力を求め、次のルールに従ってユーザーが勝つかどうかを判断します。
- ユーザーの入力が正確な順序で宝くじと一致する場合、賞金は$10,000です。
- ユーザーの入力のすべての数字が宝くじ番号のすべての数字と一致する場合、賞金は$1,000です。
- ユーザーの入力の1桁が宝くじ番号の桁と一致する場合、賞金は$1,000です。
基本フォーマット
基本的に、私はrandintを使用して2桁の数字を生成します(たとえば、58を生成します)。次に、ユーザーは同じ長さの数字を入力します(指定されていませんが、簡単にするために、数字を10〜99としましょう)。
次に、一連のネストされたifを介して、数値が3つの結果と1つの例外と比較されます。
問題:
指定された方法で数値を比較する方法が2つあるため、手がかりがありません。私はすべての基本的な演算子を知っていますが、この場合、それらを使用する方法がわかりません(==を使用できる完全に一致する数値を除いて)。私は(私のC / C ++クラスからの)配列を考えていましたが、ここでそれを実装する方法がわかりません。これが私がこれまでにしたことです:
import random
import time
##Declare Variables
usernum=0.0
lottery_num=random.randint(10,99)
##Input
print("Welcome to the Lottery Program!")
usernum=int(input("Please enter a two digit number: "))
print("Calculating Results.")
for i in range(3):
time.sleep(1)
print(".")
##Calc & Output
if lottery_num==usernum:
print("All your numbers match in exact order! Your reward is $10,000!\n")
elif lottery_num== #WHAT DO HERE?
print("All your numbers match! Your reward is $3,000!\n")
elif lottery_num== #WHAT DO HERE?
print("One of your numbers match the lottery. Your reward is $1,000!\n")
else:
print("Your numbers don't match! Sorry!")
解決
私はついにあなたたちの多くの助けを借りてそれを行う方法を理解しました!どうもありがとうございます!これが私がしたことに興味のある人のための完全な割り当てです。
import random
import time
##Declare Variables
user_num=0
##lottery_num=random.randint(10,99)
lottery_num=12
##Input
print("Welcome to the Lottery Program!")
user_num=int(input("Please enter a two digit number: "))
print("Calculating Results.")
for i in range(3):
time.sleep(1)
print(".")
##Calc & Output
lottery_tens = lottery_num // 10
lottery_ones = lottery_num % 10
user_tens = user_num // 10
user_ones = user_num % 10
if lottery_num == user_num:
print("All your numbers match in exact order! Your reward is $10,000!\n")
elif lottery_tens == user_ones and lottery_ones == user_tens:
print("All your numbers match! Your reward is $3,000!\n")
elif lottery_tens == user_tens or lottery_ones == user_ones \
or lottery_ones == user_tens or lottery_tens == user_ones:
print("One of your numbers match the lottery. Your reward is $1,000!\n")
else:
print("Your numbers don't match! Sorry!")
##Same as Calc & Output using Sets.
##lottery_set = set('%02d' % lottery_num)
##user_set = set('%02d' % user_num)
##if lottery_num == user_num:
## print("All your numbers match in exact order! Your reward is $10,000!\n")
##elif lottery_set == user_set:
## print("All your numbers match! Your reward is $3,000!\n")
##elif lottery_set.intersection(user_set):
## print("One of your numbers match the lottery. Your reward is $1,000!\n")
##else:
## print("Your numbers don't match! Sorry!")