アルゴリズム?プログラミング。 - 探そう!
いろんな数字が入っているリストを作って、その中で一番大きい数字を探してみます。
例えば
array = [3,1,7,2,5]
というリストがあって、一番大きい数字を探してみます。
単純に一つずつ数字を取り出して比べていきます。数字を取り出す方法はfor inループを使います。
リストそのまま
for i in array:
print(i)
として実行すると、3 1 7 2 5 と順番に取り出してくれます。この数字を比べていけば良いです。
比べるものを作っておきます。
max = 0
あとは比べて、
もし、変数maxよりリストから取り出した数字が大きいとき" if max < i"はmax変数をその大きい数字に入れ替えます "max = i"。
for i in array:
if max < i:
max = i
あとはループが終わった時にprint関数で出力します。
全体です。
array = [3,1,7,2,5]
max = 0
for i in array:
if max < i:
max = i
print(max)
これで、"7"が取り出すことができます。
添字
リストの数字そのままループで取り出す方法でしたが、リストの添字
array[0]という感じで取り出していく方法でもやってみます。
range()関数を使います。以下は0からリストの長さ分の範囲を指定します。
リストの長さは
で取れます。以下実施すると
array = [3,1,7,2,5]
for i in range(0,len(array)):
print(i)
0 1 2 3 4
とリストの添字がとってこれます。リストから数字を取り出す場合は、print()を
print(array[i])
とすれば良いです。
array = [3,1,7,2,5]
max = array[0]
for i in range(0,len(array)):
if max < array[i]:
max = array[i]
print(max)
やっていることは上のリストそのままと同じです。これで一番大きな数字が取れてきます。
おまけ。最小の数字を探し出します。不等号を逆にすれば一番小さな数字を探してくれます。
array = [3,1,7,2,5]
min = array[0]
for i in range(0,len(array)):
if min > array[i]:
min = array[i]
print(min)