✨ ベストアンサー ✨
おそらく疑問に思われているのは、
破線の部分が30でなく31になっている。
ということでしょうか。
これは、簡単に説明すると、
プログラムの処理効率を良くする為です。
nが28,29,ときて30のとき、
前半の3で割って余り0に該当します。
なので、わざわざ30以上という後半の
条件を書く必要がないため、
30ではなく31としています。
なお、このif文の処理は複雑ですが、
条件の判定演算子(or, %, ==, >=など)は、
全て優先順位が決まっています。
なので、処理の無駄を省き最適化する為、
とも考えられます。
納得できました🙇🏻♀️՞
ありがとうございました。