素数の覚え方 簡単な語呂合わせによる100までの25個の素数を暗記! 素数算出プログラム付き

スポンサーリンク

素数とは、1と自分以外の数では割り切れない正の数です。

2以外は全て奇数である。(偶数の場合2で割り切れてしまう)

ここでは覚えやすさを重視した語呂合わせを紹介します!

スポンサーリンク

素数について

素数の具体例

1~1000までの素数は以下の通り

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, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997

素数の暗記(100まで)

  • 十の位をせんとうのみに置いて、一の位をそれぞれ暗記します。
2,3,5,7

「2、3、5、7」そのまま暗記

11,13,17,19 「11、3、7、9」 イチイチさん泣く
23,29 「23、9」 ふたサンキュー
31,37 「31、37」 サンイチサンナナ
41,43,47 「41、43、47」 よいみんな
53,59 「53、59」 ゴーサンゴーキュー
61,67 「61、67」 ろくイーナ
71,73,79 「71、73、79」 ナナひとサンキュー
83,89 「83、89」 パパサンキュー
97 「97」 な!
2357、イチイチさん泣く、ふたサンキュー、サンイチサンナナ、よいみんな、ゴーサンゴーキュー、ろくイーナ、ナナひとサンキュー、パパサンキュー、な!
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

素数暗記の注意点

  • 自信がないときは2、又は3で割り切れないかを確認してください。
  • 掛け算の答えになっている数は素数ではありません。
  • 27(3×9)、49(7×7)、87(29×3)などは素数ではありません。

素数の効率的な覚え方

  • 語呂合わせを唱えて覚えることももちろん大事ですが、実際に書き出しをして書いて覚えることを心がけてください!
  • 唱えているだけでは覚えられません!

素数を求めるプログラム

  • 以下は参考として、Javascriptで素数を算出し、HTMLに表示するプログラムです。
  • const endNumber = 100 の数を大きくすれば範囲が広がり、素数の個数はさらに多くなります。
  • 与えられた数について、2から順に割ってゆき、割り切れる(余りが0)ときは素数ではないとして判断してゆくプログラムです。
<!DOCTYPE html>
<html>
<head>
<title>素数</title>
</head>
<body>
<h1>素数</h1>
<div id="output"></div>
<script>
function isPrime(number) {
  if (number < 2) {
    return false;
  }
  for (let i = 2; i <= Math.sqrt(number); i++) {
    if (number % i === 0) {
      return false;
    }
  }
  return true;
}
function findPrimes(start, end) {
  const primes = [];
  for (let i = start; i <= end; i++) {
    if (isPrime(i)) {
      primes.push(i);
    }
  }
  return primes;
}

const startNumber = 1;
const endNumber = 100; /* 100までの数を取り敢えず求めます  */
const primeNumbers = findPrimes(startNumber, endNumber);
const outputDiv = document.getElementById("output");

primeNumbers.forEach(function(prime) {
  const primeElement = document.createElement("p");
  primeElement.textContent = prime;
  outputDiv.appendChild(primeElement);
});
</script>
</body>
</html>