私はクラスの課題に取り組んでいます。私は私の希望の結果が何であるかを示すために投稿を再編集しました。これまでは、私は周波数の部分に立ち往生しています。これらの結果に到達したい: Results課題の完了:ダイス確率
ありがとうございます!
num = int(input("How many times would you like to roll the dice? "))
sides = int(input("How many sides does the dice have? "))
def throwDice(num=1, sides=6):
return [random.randint(1,sides) for i in range(num)]
#-- main ----------------------------------------------------------------------
numberOfTrials = int(input('How many trials? Enter:'))
# perform simulation, record and print frequencies
frequency= 13*[0] # same as [0,0,0,0,0,0,0,0,0,0,0,0,0]
for i in range(numberOfTrials):
t = throwDice()
frequency[t[0]+t[0]] += 1;
# end for
print()
print("Frequencies:")
print(frequency)
# calculate relative frequencies, probabilities and errors
relativeFrequency = [0, 0]
probability = [0,0]
error = [0,0]
for i in range(2, len(frequency)):
relativeFrequency.append(frequency[i]/numberOfTrials)
probability.append(min(i-1,13-i)/36)
error.append(abs(probability[i]-relativeFrequency[i]))
# end for
#print(relativeFrequency)
#print(probability)
#print(error)
print()
# print results
f1 = "{0:<10}{1:<22}{2:<22}{3:<22}"
f2 = 71*"-"
f3 = "{0:>3} {1:<22.15f}{2:<22.15f}{3:<.15f}"
print(f1.format("Sum","Relative Frequency","Probability","Error"))
print(f2)
for i in range(2, len(frequency)):
print(f3.format(i, relativeFrequency[i], probability[i], error[i]))
#end for
print()
エラーメッセージを投稿する場合は、プログラムの予想される動作も投稿してください。もちろん、エラーを取り除く手助けができますが、コードを修正する手助けはできません。あなたのコードが何をすべきかを知らなくても。今、あなたは 'frequency [t [0] + t [1]] 'で何をしようとしているのか推測することしかできません。 –
私は自分の投稿を再編集しました。 – YearofTheBoar
これらの結果は質問の本文に属し、スタックオーバーフロー外のリンクには含まれません。 – Prune