見出し画像

【高校情報Ⅰ】 プログラミング Python 入門 第3話 繰り返しループ処理

動画を見たら以下の問題が解けるようになります(動画の最後で説明)

画像11

情報Ⅰ共通テスト対策 書籍出版します!


■■動画解説■■



文字おこし

画像11
for i in range(5):
   print(i)

先にこのプログラムを実行してみよう。

0から4までが表示されたね。
処理の流れを説明するね。

まず for は繰り返しなさいっていう意味なんだ。
その次のiはこの前説明した変数なんだ。もちろんi以外でも大丈夫だけど、一般的にi,j,kという風にiからのアルファベットが使われる。

in から右は変数に入れる値を定義しているんだ。
rangeは値を返却する関数と言われるもの、その中に5ってあるのは終了値を意味して

0から5未満の整数 つまり0から4までを返却するんだ。

ちょっと実行してみよう

0から4まで表示されたね
処理の流れについて説明するね。

画像11

まずrangeは0から4までを返却する

そしてそれが順番に変数 iに格納される
そして次の print(i)が実行されて 0が表示される

これが5未満の4になるまで繰り返されるんだ

画像11

初期値を0以外にすることもできる

for i in range(20,31):
   print(i)

これはrange内の左側の数値が初期値で、右側は終了値さっきと同じで
31未満だからこの場合は20から30までが表示される。

画像11

いまは1づつ増えていったけど、この増え方も決めることができる。
20,31はさっきと同じだけどその隣の2は2づつ増やしてくださいという意味なんだ実行してみよう。

for i in range(20,31,2):
   print(i)
画像11

逆に増分をマイナスにすると数を減らすことも可能なんだ。
初期値が10 終了値が0未満だから 1になるまで繰り返される
実行してみよう。

for i in range(10, 0, -1):
   print(i)


printのところが字下げされているでしょ。
この字下げをインデントというんだ。
このインデントされている範囲を繰り返しなさいという意味になる。
インデントは半角スペース4つ分という決まりがあるんだ。
タブキーを押しても半角スペース4つ分と同じ字下げを行ってくれるので
タブキー一回押す方が楽かな。どちらかに統一しよう。

どこまでループされるかを確認していこう

for i in range(1, 5, 1):
    print(i)
    print(‘END’)

数字が出るごとにENDがでたね。
これはループ内にENDが属しているということだ

画像11

じゃあ、print ENDの字下げをとってみよう

今度はENDが最後の一回だけだね

for文の中が繰り返されてそれが終了したら
はじめてprint ENDが呼ばれるんだ。

こういう風にプログラムを階段の様に段差を付けてグループを見やすくすることを階層化というんだ。


ループは入れ子にすることもできる。

画像11

まず親のfor文の一回目が実行されるとprint i で0が表示される。
そして子のfor文が呼び出されて 0~2までの3回繰り返されて終わったら
親の次のループに戻るんだ。

for i in range(2):
	print(i)
	for j in range(3):
		print("入れ子です")
print("END")

じゃあ、今日の復習問題をやっていこう。

画像11


答え

画像11


ソースコード

for i in range(5):
   print(i)

for i in range(20, 31):
   print(i)

for i in range(20, 31, 2):
   print(i)

for i in range(10, 0, -1):
   print(i)

for i in range(1, 5, 1):
	print(i)
print("END")


for i in range(2):
	print(i)
	for j in range(3):
		print("入れ子です")
print("END")
for i in range(4):
	print(i)

for i in range(1, 10, 2):
	print(i)


for i in range(2, 6):
	print(i)
print("終わりです。")

for i in range(2, 6):
	print(i)
	for i in range(2):
		print("途中です。")
print("終わりです。")


この記事が気に入ったらサポートをしてみませんか?