私は、コインを反転して最長の一連の頭や尾を返すプログラムをPythonで作成しようとしています。それは、コインを何回フリップするかをユーザに尋ねる。何らかの理由で私のプログラムが実行されていないため、私は理由を理解できません。私は、なぜ「フリップの数」と「文字列として」をユーザに要求していないのか分かりません。なぜこのプログラムは実行されていません(Python)
import random
def flip():
flipValue = random.randint(1,2)
if flipValue == 1:
side = "Heads"
else:
side = "Tails"
return side
def nStreak():
number = int(input("Number of flips: "))
chars = int(input("As a character string: "))
series = 0
heads = 0
tails = 0
longest_h = 0
longest_t = 0
while series != number:
side = flip()
series += 1
if side == "Heads":
heads += 1
tails = 0
if heads == chars:
longest_h += 1
heads = 0
if side == "Tails":
tails += 1
heads = 0
if tails == chars:
longest_t += 1
tails = 0
print("Number of heads streaks: ", longest_h)
print("Number of tails streaks: ", longest_t)
実行すると何も得られません。
関数を呼び出さなかった –
2つのメソッドが定義されていますが、どちらも呼び出されていません。スクリプトはメソッド定義を実行して終了します。 –
defを使わずにこのプログラムを書くにはどうすればいいですか? def flip()とdef nStreak()を取り除きたいのであれば?これは課題のためであり、私の先生はdefを使用する方法をまだ教えていないので、私はそれをとにかく追加しましたが、現在は後悔しています – user8930130