
No.5ベストアンサー
- 回答日時:
No.3のお礼について
私も初めて見かけたのでリンク先をパクった感じにはなってます。
内側のループでn-1までにnが割り切れてしまったら素数ではない点については理解されてますよね。
if n%i == 0:
break
がその部分になります。
でn-1までに割り切れることがなかったなら、素数として追加する。
else:
primes.append(n)
すなわちelseはif文ではなくfor文でbreakされることなくループを抜け出たnに対してリストへの追加をしています。(リンク先の受け売りです)
私もPythonはインストした程度でほとんど触ってはいないんです。
『Pythonの絵本』も途中で寝ちゃう位真面目に読み切ってなく、今回もググってみただけのものですから。
No.3
- 回答日時:
No.2です。
primes = []
for n in range(2,101):
for i in range(2,n):
#print(i)
if n%i == 0:
break
else:
primes.append(n)
print(primes)
結果:
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
https://teratail.com/questions/133434
という方法有り?
この回答へのお礼
お礼日時:2019/11/01 15:55
なるほど。確かにうまくいで動作しました、ありがとうございます!
ただ、違いが良く分からないというか、僕が書いたコードではなぜうまくいかないのでしょうか?
インデントの位置が変わるだけで、なぜこうも出力が異なるのでしょうか。。。
No.1
- 回答日時:
primes = []
for n in range(2,101):
for i in range(2,n):
if n%i == 0:
break
else:
primes.append(n)
break #追記しないとnを条件不成立分(iが0出ない場合)追加し続けるから、1度追加したらループを抜ける
print(primes)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
(再質問)エクセルのマクロボ...
-
CSSのhtmlへの紐付けについ...
-
秀丸エディタで、同じ記号で囲...
-
Ruby 格納
-
ビーリアルのユーザー名を変え...
-
1、Rstudioで回帰直線を求める...
-
a=2, b=1のとき”x=(a-b+3)%3”の...
-
Ruby require ライブラリー
-
ruby OpenURI::Meta
-
ruby while式
-
ruby loopメソッド 変数(再喝)
-
ruby 配列
-
ruby loopメソッド 変数
-
ruby クラス・オブジェクト・イ...
-
ルビー言語 ライブラリー 追記
-
ruby raise句
-
ruby begin句
-
ruby ensure句
-
ルビー言語 ライブラリー(再々...
-
ルビー言語 csvファイル 続き(...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ラズパイ python文字の切り出し...
-
rubyプログラム中の標準出力を...
-
Rubyの構文?言語仕様?
-
Rubyで申(さる)を出力したい...
-
サロゲートペアの文字コード→文...
-
RubyプログラムでURLより取得し...
-
Rubyで%uxxxのデコード
-
rubyの誤差
-
Rubyで文字列の先頭を取りだす
-
Ruby net/httpについて
-
Rubyでwebページを取得するとき
-
COBOLのIFの入れ子について
-
小文字wと大文字Wの区別
-
VB.NETで階乗を求めるプログラ...
-
Windowsでchangenotifyしたい
-
Rubyのソースを難読化すると「u...
-
Ruby / passenger のインストー...
-
バーコードのチェックデジット...
-
Ruby on Railsでボタンをクリッ...
-
パソコンのフォルダ保存について
おすすめ情報