Bertrand 的假设是一个数学陈列室,它指出对于每个数 n>3,都存在一个位于 n 和 2n-2 之间的素数 p。
n < p < 2n -2
其中 n 是一个数,使得 n>3 并且 p 是素数。
质数-一个数字是一个素数,如果是唯一因素是1和它本身。
伯特兰公设的一个限制较少的表述是
n < p < 2n , for all n>1.
5
7
prime number in range 5 and 2*5 i.e. prime number between 5 and 10
11
13, 17, 19
prime number in range 11 and 2*11 i.e. prime number between 11 and 22
//使用伯特兰假设查找素数的程序 -
#include <iostream> using namespace std; void printPrime(int n) { int flag = 0; for (int i = 2; i * i <= n; i++) if (n % i == 0) // i is a factor of n flag++; if(flag == 0) cout<<n<<" "; } int main() { int n = 22; cout<<"Prime numbers in range ("<<n<<", "<<2*n<<") :\t"; for (int p = n + 1; p < 2 * n - 2; p++) printPrime(p); return 0; }输出结果
Prime numbers in range (22, 44) : 23 29 31 37 41