Pythonでwhile文を使った繰り返し処理をやってみた。

Python
Sponsored Link

while文は、同じプログラムを何度も繰り返す必要があるループ処理に使われます。

しかしwhile文も、if分などと並んでなんとなく感覚でつかみにくい構文なので、なんとなく感覚がつかめないんですよね。

そこで自分が実際にコードを書いて、練習してみたことをここにまとめてみます。

プログラミングを勉強したい!! プログラミングに興味がある!!
そんなあなたへのおすすめ記事
無料体験あり、キャッシュバック有りプログラミングスクールおすすめはこちら

 

while文の構造

まずはwhile 文の基本的な構造ですが、以下のようになります。

while 条件:
    ステートメント

でも、これでは分かりにくいのですよね。そこで実際にwhile文を書いてみましょう。

しかし、以下のようなwhile文の場合、プログラムが止まらなくなるので気を付けてください。

count = 0 # 変数countに0を代入

while count < 5: # 変数countが5未満の間
    print("無限ループの中にいます。") # 左の文をプリント
    print("抜けられない") # 左の文をプリント

このプログラムを実行すると、無限にプログラムが実行されテキストが無限に出力されます。

簡単に構造を解説しますね。

まず 変数countに0を代入します。

次に、whileでcountが5未満の間「無限ループの中にいます」「抜けられない」がプリントされるようにします。

しかし、0はもともと5未満なので、上記二つのコメントが永遠にプリントされ続けることになります。

プリントされる数に制限をかけてみましょう。

count = 0 

while count<5: # countが5未満の間
    print("ループの中にいます。") # 左の文をプリント
    print("何とかぬけだせた。") # 左の文をプリント
    count = count + 1 # カウントに1を足すのを繰り返す。

ループの中にいます。
何とかぬけだせた。
ループの中にいます。
何とかぬけだせた。
ループの中にいます。
何とかぬけだせた。
ループの中にいます。
何とかぬけだせた。
ループの中にいます。
何とかぬけだせた。

この場合countの初期設定は0ですが、最後の1行で1づつ足されるようにプログラムします。

つまり毎回1づつ足され、countが0から4になるまでループを繰り返し、止まるようになっています。

数字を使っても同じことができます。

count = 0 

while count<5: # countが5未満の間
    print(count) # 左のステートメントを実行する。
    count = count + 1 # countに1をを足すのを繰り返す。
0
1
2
3
4

さらに数字を変えてもOK。

count = 5

while count<=10: # countが10以下の間
    print(count) # 左のステートメントを実行する。
    count = count + 1 # countに1をを足すのを繰り返す。
5
6
7
8
9
10

while 文を使った応用

では少し応用です。

ユーザーが入力した数に基づいて、while文を使ったループを作っていきましょう。

ユーザーが入力した数に、変数countが10以下になるまでの数を一つずつかけ、その結果を表示します。

number = int(input("Enter a Number: ")) # ユーザーに入力を促す。

count=1
while count<=10: # count が 10以下の間
    product = number * count # 入力された数と、countを掛け合わせた数を 変数productに代入し、 
    print(product) # 左のステートメントを実行する。
    count = count +1 # countに1を足し続ける。

Enter a Number: 6
6
12
18
24
30
36
42
48
54
60

次に、出力した数を別のプログラムで使うために、リスト化したいと思います。

ここで必要になるのが、空の箱と append()関数になります。

早速やってみましょう。

number = int(input("Enter a Number: ")) # ユーザーに入力を促します。
A = [] # リスト用の空箱を設置します。
count=1
while count<=10: # count が 10以下の間
    product = number * count # 入力された数と、countを掛け合わせた数を 変数productに代入。
    count = count +1 # countに1を足す。
    A.append(product) # append()関数を使って空箱Aに変数productに出力された値を代入
print(A) # Aをプリントする。

Enter a Number: 6
[6, 12, 18, 24, 30, 36, 42, 48, 54, 60]

以上、while文でいろいろやってみました。

このような簡単な、構文なら何とかなるようになったのですが、これ以上難しいものになると、どうなるか自信がないですね。

とりあえずは指を動かして、練習するしかないですね。

プログラミングを勉強したい!! プログラミングに興味がある!!
そんなあなたへのおすすめ記事
無料体験あり、キャッシュバック有りプログラミングスクールおすすめはこちら

 

関連記事↓↓↓

Pythonで確率の計算。for文で集合の中の要素を抽出
確率という言葉は「降水確率」みたいな形で見たことはあるけど、なんとなく感覚的にわかっているだけで、実際に何かというと何かよくわからないですよね。 自分も統計の本を買ってみましたが、確率の項で こんなのが出てくるだけで拒否反応が出てし...
python で正規分布の確率密度関数を描く
Pythonで正規分布の確率密度関数を描いてみます。 データは気象庁の仙台 日平均気温の月平均値(℃)を使って正規分布の確率密度関数を描いてみます。 手順としては、気温データをエクセルに落とし、さらにpythonのDataFra...
Sponsored Link

コメント

タイトルとURLをコピーしました