はい!どーもまっちゃんです!
今回から数回にわたってIf文の使い方について解説していこうと思います
で、If文ってPythonに限らず色んなプログラミング言語で基本文法として最初の方に出てくることが多かったり、調べれば使い方くらいたくさん出てくるんですけど、
一度やったことのある人が再検索する時用に作られてるような文章が多いんですね。
そもそもパソコン触ったことがないっていう人だったりとか、プログラミングについてまったく知識がないっていう人は「こんなん学んで何に使えるの?」と思う人がほとんどだと思います
だって、最初に出てくる例文なんてつまらないことが多いじゃないですかw
なのでこのブログではIf文を使って、BMIという肥満度を計算するプログラムをあなた自身の力で作れるようにしていきたいと思います
やり方は簡単です!
これから始まるストーリーを順番に読むだけ!
それだけでIf文の知識はもちろん、その他の基本的な知識が学べます
また、前回までの記事でPythonをインストールしたり、プログラムの動かし方をゼロから始めるPC初心者用に解説したりしているので、そちらの方も気になったらぜひ読んでみてください!
全部ストーリーを順番に見ていくだけで分かるように作ったつもりです!
ということで今回もぜひ最後までお楽しみください♪
6話 【これは最初に覚えておこう】If文の使い方①
「じゃあ次は制御構文ってのに入っていく」
「その中でも分岐処理って話だ」
「おう、分岐処理って一体なんだ?」
「YesかNoかでプログラムの動きを変えるってことかな」
「選択肢を用意する感じ」
「あーはいはい、なるほどね」
「そしてこの話の最後にBMIの測定プログラムを作る」
「BMIってあの肥満判定テストか?」
「そーそー!最近の体重計にもこれを計測してくれるものがいっぱいあるね!」
「数字だけ見て一喜一憂するのもいいと思うけど、どーせならそれ自分で作っちゃお―ぜ!中身の仕組みもそれでよく分かるよーになる」
「おお!マジで!!そんな画期的なものが作れるのか!やろやろ!!」
「おし、早速プログラム書きながら内容見てこーか」
「IDLEでこんなプログラムを実行してみ?」
「もし実行の仕方が分からんかったらこの前の話(4話)を振り返ってみた方がいいかもな」
Pythonに標準実装されてるIDLEの使い方「ストーリーで学ぶPython初心者プログラミング第4話」 | まっちゃんLabo (matchan-labo.com)
1 2 3 4 5 6 |
a = 3 if a == 3: print("aは3です") else: print("aは3ではありません") |
「おう、じゃあ実行してみるか」
「ファイルの保存を忘れんなよ?」
「分かってるわ!さすがにもーできる!」
1 |
aは3です |
「なるほど。こんな結果が表示されたぞ」
「よし、じゃあさっきのプログラムをちょっといじるぞ?」
「aに代入されてた数字を3から2に変えてみ?」
「代入は分かるな?分からんかったら前回の内容をもーちょい復習した方がいいかもね」
「こーゆーことだろ?」
1 2 3 4 5 6 |
a = 2 if a == 3: print("aは3です") else: print("aは3ではありません") |
「そーゆーこと!実行してみよ―か」
1 |
aは3ではありません |
「これ何が起こってるか分かる?」
「んーまあ、なんとなく」
「aに3が代入されている時は3ですって出てて、2にすると3じゃないですって出てるんだよね?」
「そそ!実はこれIf文ってのを使ってみたんだ」
「Ifって"もし~だったら"って英語でやるやつか」
「それそれ!実はIf文ってのはこーやって使う」
1 2 |
if ○○(発動条件): ××(処理内容) |
「ほう。今回は発動条件がa == 3に当たるだな?」
「え、この"=="が謎なんですけど」
「そーだよね!だと思ったわw」
「これは右と左が同じって意味なんだよね」
「さっき使った"="は代入って意味で数学ではこれを区別しないんだけど、Pythonだと違う意味になるのよ」
「へー。a=3だとaに3を代入する、a==3だとaと3は一致してるって意味なんだ」
「そゆことだね。まあ、これだけだとあんまピンと来ないでしょ?w」
「この辺はもう慣れていくしかないかな」
「じゃあ、このelseってのは??」
「お、やっぱそこに目がいくよな!」
「elseってのは直訳すると"他に"って意味だね」
「あーそゆことか。"if a==3"で発動する時以外のパターンってことか」
「aに3を最初に代入しておくとIf文のa==3の時の条件を満たすからその中の処理が実行されてる。」
「そしてaに2を代入した時はIf文のa==3の条件を満たさないから、elseの中身が実行されるってことや」
「あーはいはい!ちょっとややこしいけどなんとなく分かったわ」
「あとは慣れていこ―か!」
「じゃあ次はこんなプログラムを考えてみよっか」
1 2 3 4 5 6 7 |
a = 2 b = 3 if a+b == 5: print("a+bは5です") else: print("a+bは5ではありません") |
「あーはいはい!これは分かるぞー!」
「a+bが5になってる時にIfの中身が実行されるんだな!」
「いいね!分かってきた!今回みたいに足し算した条件を書くこともできるんだよね」
「"+"の他にも引き算の"-"、割り算の"/"も使えるし、"*"のかけ算も使える!」
「"*"がかけ算を表す記号ってのはプログラミング特有の書き方だな」
「まあ、数学でもa・bって書き方するし、そんなに新しい感じはしないな」
「そかそか!じゃあこれいってみよーか!」
1 2 3 4 5 6 |
a = 2 if a%2 == 0: print("aは偶数です") else: print("aは奇数です") |
「奇数か偶数かを判定してそーだね!」
「そーだよ!奇数と偶数ってなにか分かるか?」
「それくらい分かるわ!(笑)」
「2で割って余りがあるかないかだろ?なめんな!(笑)」
「んでもIf文の中にあるa%2ってのはよく分からんな」
「失礼しました(笑)」
「でもまさにさっき言ってた意味をその%が表してるんだわ」
「え、どゆこと?」
「実は%ってのは割り算の余りを出す記号なのよ」
「これもプログラミング独特の書き方だな」
「あーそゆことか。ってことはa%2==0ってことはaを2で割った余りが0ってこと?」
「そーなのよ」
「あーだから偶数かどーかを判定できるわけか」
「いいね!分かってきた!じゃあ実際にIf文プログラムを自分で書いてみよーか」
理解が進んできたバイアの目にはショーセ―からの挑戦にたぎる熱いものが映っていた