日報#7|素数リベンジ。回文判定。pass,continue,breakについて。

1.本日の作業内容
⬛︎素数判定の方法(試し割り法)について学んだ。
◼︎理解度100%
⬛︎回文判定について学んだ。
◼︎理解度100%
⬛︎pass, continue,breakについて学んだ。
◼︎理解度100%
2.直面した問題点、対応
⬛︎問題点
◼︎pass, continue,breakの使い分けがわからない。
⬛︎対応:以下、理解した内容
◼︎pass文:何もしない文。
・実行されても何も起きない。
・構文的には文が必要だが、コードとしては何も
実行したくない場合に使う。
・例えば、関数定義のdef文や条件分岐のif文は、
中身を省略できない。何かを記述する必要がある
が、何も実行する必要がない(実行させたくない)
場合に使う。
◼︎continue文:continue以降の操作は行わず、
次の繰り返し対象(処理の先頭)に進む。
◼︎pass文とcontinue文の違い
・forやwhileのループで使われるcontinue文は
それ以降の処理を行わずに次のステップに進む。
・つまり、continue文の後に記述された処理は
実行されない。
・pass文は何もしないので、pass文の後に記述
された処理が続けて実行される。
◼︎break文:繰り返し処理を抜け出す際に使用する。
・breakが実行された時点で、その後のループ処理は
一切行わない。
・つまり、先頭から繰り返し…がないってこと。
そこで終わる。
・無限ループから抜け出す時等に使われる。
3.残っている課題等、明日の予定
△効率の良い素数判定プログラムの書き方について
(√nまで調べる方法)を学びたい。
⬛︎階乗計算について学ぶ。
4.気づき、学び
非効率的なやり方だけれど、素数判定プログラム
を書くことができた。最近うすうす気づきつつあっ
たことが、今回の素数判定プログラムに取り組む中
で確信に変わったのだけれど…同じ結果を得たいと
してもプログラムの書き方っていくつもあること。
ここからは推測だけれど、そのいくつもって、
それぞれにメリットデメリットがあって、どれでも
いい時もあれば、スピードを重視するためにだった
り、正確性を重視するためにだったり…その時々で
コレが最適だ!みたいな時もあるのかなって。
だからこそ、色んなパターンを知っておくことは
大切だと思うし、ただ書けるだけではなくて、
それぞれのメリットデメリットも言えるような、
そんなくらい深く理解して身につけておくことって
大事な事だと思う。でもそれにはとてもとても時間
がかかる。どこかで線引きをしなければいけなかっ
たりもする気がする。全部含めて、難しい!
よくやった!とりあえず今は、
素数判定プログラムを書けた
喜びに浸っておこう!









コメント