質問: n for i in range(n//2)): ``` ### (2)補足 個人的には調べる範囲が 1. nのサイズによる 2. nがどの数字であっても一つに収まる で、2.であるならばその範囲を採択したいなと考えています。
回答: 平方根が整数かどうか調べれば良いのだけなのでは。 ``` >>> for n in range(1, 100): ... if (n ** .5).is_integer(): ... print(n) ... 1 4 9 16 25 36 49 64 81 ``` あるいは平方根がfloatに収まらないようなケースについての質問でしょうか?