如何在 C 中显示质数
质数是任何允许两个整数和正除数的数字,即 1 和数字本身。1 不被认为是质数,因为它承认是除数。0 也是,因为它可以被所有数字整除。检查 p 是一个质数:
- 除 1 和 number p .
- Wilson 的 theorem 指出,当且仅当 p-1 等效于 -1 模 p.
(p - 1)! + 1 ≡ 0 (mod p).
来源: http://fr.wikipedia.org/wiki/Th%C3%A9or%C3%A8me_de_Wilson
我们将使用第一种方法。
检查整数是否为质数的程序:
使用命名空间 std; #include #include int main() { int nb,r=0; 成本<<输入一个数字:”;辛>>铌; for(int i = 1 跨度>;i <= NB ;i++ ) { if(nb % i == 0) { r++; } } 如果(r>2) 成本<<注意<<不是质数”跨度>< else 成本<<注意<<是质数”跨度>< system(pause”); } |
检查n 输入的数字是素数:
#include #include int main() { int number=1 counter=0; int i,r,n=100; while(计数器<n){//第一个 n r=0;//计算除数 数字++; for (i=1 ;i<=数字;i++) { if ((number%i)==0) r++; } if(r==2)//质数分为 1 和自身 { printf( %d \n”,数字); //我们递增 counter 计数器++; } } system(pause”); } |
显示all 质数 较低级别 at n:
#include #include int main() { int number=1 counter=0; int i,r,n=100; printf(小于 %d 的素数是:\n”,n); while(号码 <n){//只要数字 r=0;//计算除数 数字++; 为 (i=1 ;i<=数字;i++) { 如果 ((number%i)==0) r++; } if(r==2)//质数分为 1 和自身 { printf( %d \n”,数字); } } system(pause”); } |
程序:
小于 100 的素数是:
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.