labunix's blog

labunixのラボUnix

openssl/factorでセクシー素数を列挙する

■セクシー素数
 http://ja.wikipedia.org/wiki/%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%BC%E7%B4%A0%E6%95%B0

■差が 6 の素数の組 (p,p+6)

$ for n in `seq 1 500`;do \
    echo $((0x`openssl prime "$n" | awk '($3!="not"){print $1}'`)) ; \
  done | grep -v "^0\$" | \
  for m in `xargs`;do \
    echo "$m" | awk '{print ($1+6)}' | xargs factor | \
      awk '(NF==2){printf "%4d,%4d\n",$2-6,$2}'; \
  done | nl -w 2 -n rn | sed s/'\t'/" "/g
 1    5,  11
 2    7,  13
 3   11,  17
 4   13,  19
 5   17,  23
 6   23,  29
 7   31,  37
 8   37,  43
 9   41,  47
10   47,  53
11   53,  59
12   61,  67
13   67,  73
14   73,  79
15   83,  89
16   97, 103
17  101, 107
18  103, 109
19  107, 113
20  131, 137
21  151, 157
22  157, 163
23  167, 173
24  173, 179
25  191, 197
26  193, 199
27  223, 229
28  227, 233
29  233, 239
30  251, 257
31  257, 263
32  263, 269
33  271, 277
34  277, 283
35  307, 313
36  311, 317
37  331, 337
38  347, 353
39  353, 359
40  367, 373
41  373, 379
42  383, 389
43  433, 439
44  443, 449
45  457, 463
46  461, 467