#1
by keito94 » 6年前
このリポジトリの方法を参考に
このサイトの課題を、Pythonで作っています。
コード:
for i in range(throw):
if pin[i] == 10:
#
total = ((pin[i])+(pin[i+1])+(pin[i+2]))
freamnum += 1
else:
if i % 2 == 0:
rest_pin -= pin[i]
else:
freamnum += 1
if rest_pin - pin[i] == 0:
total = (pin[i]+pin[i+1])
else:
rest_pin = 10
total += pin[i]
ですが…。
コード:
投げた回数を入力してください。3
倒したピンの数を1投ずつ入力してください。10 10 10
Traceback (most recent call last):
File "C:/Users/keito940/PycharmProjects/BowlingScore/Bowling.py", line 30, in <module>
Input()
File "C:/Users/keito940/PycharmProjects/BowlingScore/Bowling.py", line 26, in Input
score = BowlScore(throw,pin)
File "C:/Users/keito940/PycharmProjects/BowlingScore/Bowling.py", line 7, in BowlScore
total = ((pin[i])+(pin[i+1])+(pin[i+2]))
IndexError: list index out of range
Process finished with exit code 1
連続ストライクをやろうとすると、上のログのようなエラーが出ます。
原因は何なのでしょうか?デバッグをして、挙動をチェックしたところ、i=1のときはちゃんとできているようです。
[url=https://github.com/BcRikko/CodingDojo]このリポジトリ[/url]の方法を参考に[url=http://vipprog.net/wiki/exercise.html#x0c80604]このサイト[/url]の課題を、Pythonで作っています。
[code=python]
for i in range(throw):
if pin[i] == 10:
#
total = ((pin[i])+(pin[i+1])+(pin[i+2]))
freamnum += 1
else:
if i % 2 == 0:
rest_pin -= pin[i]
else:
freamnum += 1
if rest_pin - pin[i] == 0:
total = (pin[i]+pin[i+1])
else:
rest_pin = 10
total += pin[i]
[/code]
ですが…。
[code]
投げた回数を入力してください。3
倒したピンの数を1投ずつ入力してください。10 10 10
Traceback (most recent call last):
File "C:/Users/keito940/PycharmProjects/BowlingScore/Bowling.py", line 30, in <module>
Input()
File "C:/Users/keito940/PycharmProjects/BowlingScore/Bowling.py", line 26, in Input
score = BowlScore(throw,pin)
File "C:/Users/keito940/PycharmProjects/BowlingScore/Bowling.py", line 7, in BowlScore
total = ((pin[i])+(pin[i+1])+(pin[i+2]))
IndexError: list index out of range
Process finished with exit code 1
[/code]
連続ストライクをやろうとすると、上のログのようなエラーが出ます。
原因は何なのでしょうか?デバッグをして、挙動をチェックしたところ、i=1のときはちゃんとできているようです。