teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

試したことを書き忘れていたので追記しました

2021/06/24 08:43

投稿

room
room

スコア1

title CHANGED
File without changes
body CHANGED
@@ -1,7 +1,7 @@
1
+ ### 実現したいこと
1
- ### pythonで素数を生成するジェネレータを作りたいです
2
+ pythonで素数を生成するジェネレータを作りたいです
2
-
3
+ エラトステネスの篩と無限イテレータを使っています
3
4
  素数を生成するはずが生成された数列は2, 3, 4となってしまいます
4
- エラトステネスの篩を使っています
5
5
  エラーは発生していません
6
6
 
7
7
  ### 該当のソースコード
@@ -20,6 +20,14 @@
20
20
  yield p
21
21
 
22
22
  p = gen_prime()
23
- for i in range(3):
23
+ for _ in range(3):
24
24
  print(next(p)) # 2, 3, 4
25
- ```
25
+ ```
26
+ ### 試したこと
27
+
28
+ ```python2
29
+ primes = itertools.ifilter(lambda x: x % p != 0, primes)
30
+ primes, tmp = itertools.tee(primes)
31
+ list(itertools.islice(tmp, 10))
32
+ ```
33
+ とすると最初の10個は素数になるが27(合成数)が出てくるようになる

2

2021/06/24 08:43

投稿

room
room

スコア1

title CHANGED
File without changes
body CHANGED
File without changes

1

2021/06/24 07:59

投稿

room
room

スコア1

title CHANGED
File without changes
body CHANGED
@@ -1,6 +1,7 @@
1
1
  ### pythonで素数を生成するジェネレータを作りたいです
2
2
 
3
3
  素数を生成するはずが生成された数列は2, 3, 4となってしまいます
4
+ エラトステネスの篩を使っています
4
5
  エラーは発生していません
5
6
 
6
7
  ### 該当のソースコード