エレベーターの総移動回数を計算するプログラムを作成しています。
例えば1階から3階 3階から1階 1階から4階に移動するとします
1階から3階に移動するときは移動階数は3-1 = 2階
3階から1階に移動するときは移動回数2階分下がるため 2階
1階から4階に移動するときは移動回数は4-1 = 3階
総移動回数は 2 + 2 + 3 = 7階 となります。
入力例は以下の通りです。
8 #エレベータを利用する回数
17 #以下エレベータの移動する階
28
11
62
64
4
7
17
出力例
170 #総移動回数
コードを作成したのですが、if文の1行目の階数が下がる時の条件式で
IndexError: list index out of range のエラーが表示されました。
要素数のつじつまが合わないという事ですが直し方が分かりません。
アドバイス頂けないでしょうか。
python
1#利用回数を入力 2riyoukaisuu = int(input()) 3 4for i in range(riyoukaisuu): 5#利用回数の間エレベータの移動回数を入力 6 idoukaisuu = list(input()) 7 start = idoukaisuu[0] 8#最初の階数はstartに格納し,if文で階数が下がる場合の計算と階数が上がる場合の計算を行う。 9if idoukaisuu[i] > idoukaisuu[i + 1]: 10 num = idoukaisuu[i] - idoukaisuu[i+1] 11elif idoukaisuu[i+1] > idoukaisuu[i]: 12 num = idoukaisuu[i+1] - idoukaisuu[i] 13#numを合計し総階数をtotalとする 14 total = start + num 15print(total)
回答1件
あなたの回答
tips
プレビュー