「20201101」は素数(8桁年月日が素数になる日)

Pocket

Twitterだと思うのですが、今朝、「今日の日付「20201101」は素数になる」というのを目にして、一日、気になっていました。
日付を8桁年月日で表示した場合の数が素数になるというのです。
今日の日付「20201101」は確かに素数です。
自分で計算してみました。

すると意外に多いのでがっかりしました。
2020年の8桁年月日が素数になる日は次のとおりです。

20200109
20200111
20200121
20200123
20200223
20200309
20200429
20200511
20200529
20200613
20200619
20200703
20200711
20200721
20200723
20200729
20200801
20200813
20200903
20201021
20201029
20201101
20201113
20201227
20201231

ついでにコードを書いておきます。

素数の判定

def is_prime(n):
  #素数ならばTrue
  if n<=1:
    return False
  if n==2:
    return True
  if n%2==0:
    return False
  sqrt=int(n**0.5+1)
  for x in range(3,sqrt,2):
    if n%x==0:
      return False
  return True

年月日の列挙と判定

import datetime
date_from=datetime.date(2020,1,1)
for n in range(0,366):
  date_this=date_from+datetime.timedelta(days=n)
  yyyymmdd=int(date_this.strftime('%Y%m%d'))
  if is_prime(yyyymmdd):
    print(yyyymmdd)

[ 2020年11月1日 | カテゴリー: Python, 小ネタ | タグ: , , ]

« | »

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

送信してください。


タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報