用c语言实现素数的判定方法

Problem Description
对于表达式n^2+n+41,当n在(x,y)范围内取整数值时(包括x,y)(-39<=x<y<=50),判定该表达式的值是否都为素数。

Input
输入数据有多组,每组占一行,由两个整数x,y组成,当x=0,y=0时,表示输入结束,该行不做处理。

Output
对于每个给定范围内的取值,如果表达式的值都为素数,则输出"OK",否则请输出“Sorry”,每组输出占一行。

Sample Input
0 1
0 0

Sample Output
OK

3个回答

 #include<stdio.h>
#include<math.h>
int isPrm(int x) {      //判断素数
    if (x < 2)
        return 0;
    for (int i = 2; i <= sqrt(x); i++)
        if (x%i == 0)
            return 0;
    return 1;
}
int judge(int x, int y) {  //判断范围内全为素数
    for (int i = x; i <= y; i++)
        if (!isPrm(i*i+i+41))
            return 0;
    return 1;
}
int main() {
    int x, y;
    while (1) {
        scanf("%d%d", &x, &y);
        if (x == 0 && y == 0)
            break;
        if (judge(x, y))
            printf("OK\n");
        else
            printf("Sorry\n");
    }
    return 0;
}
 #include "stdio.h"
#include "math.h"

int main()
{
    int count=0;
    int primeArray[200];
    for (int i = 0; i <200; ++i)
    {
        primeArray[i]=0;
    }
    for (int j = 1; j <2000; ++j)
    {
        int flag=1;
        for (int i = 2; i <=sqrt(j); ++i)
        {
            if (j%i==0){
                flag=0;
                break;
            }
        }
        if(flag){
            primeArray[count]=j;
            ++count;
            if(count==199)
                break;
        }
    }
    int n,m,sum=0;
    scanf("%d %d",&n,&m);
    if (0<n && m>=n && m<=200)
    {
        for (int i = n; i <=m; ++i)
        {
            sum+=primeArray[i];
        }
        printf("%d\n",sum);
    }
    else
        printf("Error Show Up\n");
    return 0;
}

https://blog.csdn.net/Lucifer__Zhou/article/details/51030737

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Problem Description——用c语言实现素数的判定
Problem Description 对于表达式n^2+n+41,当n在(x,y)范围内取整数值时(包括x,y)(-39&amp;lt;=x&amp;lt;y&amp;lt;=50),判定该表达式的值是否都为素数。 Input 输入数据有多组,每组占一行,由两个整数x,y组成,当x=0,y=0时,表示输入结束,该行不做处理。 Output 对于每个给定范围内的取值,如果表达式的值都为素数,则输出&quot;OK&quot;,否则请输出...
hd 2161 Primes
Primes Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 6867    Accepted Submission(s): 2782 Problem Description Write a program to re
素数用c语言
素数原理==用c语言编写素数
用C语言实现100-200的素数
用C语言实现 (1)100-200之间的素数 (2)乘法口诀表 (3)1000-2000之间的闰年
素数的求取 用C语言实现
首先,我们要知道什么样的数叫素数。素数,为大于1的自然数,有无限个,一个素数只能被1和它本身整除。 代码为:#include<stdio.h> #include<math.h> int isPrimer(int num) { int j = 0; for (j = 2;j <= num;j++) //可优化为 for(j=2;j<=sqrt(num);j++) {
素数的判定
米勒罗宾算法 bool test (LL n,LL a,LL d) { if(n==2) return true; if(n==a) return true; if((n&1)==0) return false; while(!(d&1)) d=d>>1; LL t=pow_mod(a,d,n); while((d!=n-1)&&(t!=1
素数问题的C语言实现
素数(质数)的定义:指除了1和本身以外,不能被其他数整除的一类数。数学描述:给定任意的整数n,如果对任意的a(1&amp;lt;a&amp;lt;n),都有n%a!=0成立,那么称n是素数;如果n%a==0,则称n为合数。1.素数的判断①直观判断bool isprime(int n){ if(n&amp;lt;2) return false; for(int i=2;i&amp;lt;n;i++){ if(n%i==0)...
寻找素数的C语言实现
001-2018.9.22 最近刚开始学c语言,刚好老师布置了作业,就写在博客上,以后也方便自己查看。 刚开始用csdn,还不太会用,写出来的格式可能很乱,见谅 我们现在的问题是寻找2到100以内的所有素数,并将它们打印出来   思路 任意一个大于2的整数n,如果它是素数,那么对于所有的 i,2in - 1 ,i 都不是 n 的因子。   c语言代码实现 #include &amp;lt...
素数个数求解与素数的判定
1.素数 质数(Prime number),又称素数,指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个正因数的数)。 2.素数的基本定理 定理1:如果n不是素数,则n至少有一个( 1, sqrt(n) ]范围内的的因子 定理2:如果n不是素数,则n至少有一个(1, sqrt(n) ]范围内的素数因子 定理3:定义f(n)为不大于n的素数的个数,则 ...
C语言大小端判定
指针的类型,代表指针的寻址能力,具体表现在指针的自增,指针的取址宽度等: 下面是一个利用指针的取址宽度,判定大小端的栗子: /************************************************************************* > File Name: eadin.c > Author: XXDK > Email: v.manstein@qq
二分图的判定(C语言)
二分图又称为二部图,其定义是:设G=(V,E)是一个无向图。如顶点集V可分割为两个互不相交的子集,并且图中每条边依附的两个顶点都分属两个不同的子集。则称图G为二分图。也就是说在二分图中,顶点可以分为两个集合X和Y,每一条边的两个顶点都分别位于X和Y集合中。它满足这样一个特性,即有两顶点集且图中每条边的的两个顶点分别位于两个顶点集中,每个顶点集中没有边相连接!如下图所示: 无向图G为二分图
C语言——质数判定
Description  质数被定义为一个不能除了1和它本身整除的正整数。你的任务就是要编写一个程序,判定任意一个大于等于2的正整数是否是质数。 Input  输入只有一行,即要判定的这个正整数a(2≤a≤200)。 Output  输出只有一行,若a是质数,输出“Y”,否则输出“N”。 Sample Input  53 Sample Output  Y #include...
判断和输出素数——普通方法(C语言)
素数:除了1和它本身不再有其它的因数的大于1的自然数。 素数判断函数:            int Prime_judge(int x)     { int i; if(x==0||x==1)   return 0; for(i=2;i if(x%i==0)   return 0;//不是素数  else if(x%i!=0&&(i==sqrt(x)))        ret
L1-028. 判断素数(神奇的判定素数方法)
本题的目标很简单,就是判断一个给定的正整数是否素数。输入格式:输入在第一行给出一个正整数N(&amp;lt;=10),随后N行,每行给出一个小于231的需要判断的正整数。输出格式:对每个需要判断的正整数,如果它是素数,则在一行中输出“Yes”,否则输出“No”。输入样例:2 11 111 输出样例:Yes No 解题思路:很神奇的判断素数的方法:http://blog.csdn.net/huang_mia...
C++中素数的判定方法(多版)
内包含有三种素数判定的方法! 定义法 优化法 基于流的筛法
C语言编程之素数的判定
给出一个大于或等于3的正整数,判定它是不是一个素数。 解题思路:所谓素数是指:除了1和该数本身之外,不能被其他任何整数整除的数。n不必被2–n-1的整数除,只需被2–n/2间整数除即可,甚至只需被2–√2之间的整数除即可。 代码: #include"stdio.h" int main() { int a, i; do { printf("input number judge primen...
回文数、素数的判定
题目如下:输出既是回文数又是素数的5位十进制数,并计算个数分析:回文数,即偶数位时,左右对称;奇数位时,除了中间那位,左右对称。由此判断即可。函数代码如下:int is_huiwen(int n) { int i = 0, j; int a[1000]; // 此数组用于存储数字n的每一位。注意:此数组初始化时,若开得过大,容易爆栈。 while (n) { a[i] = n % 10...
筛选素数 C语言
筛选素数 C语言 void () { int i=2; for(i;i&lt;100;i++) { if(i2) printf("%d ",i); else { int a=2; while((a { if(ai-1) printf("%d ",i); a++; } } } }int main() { Shai(); } 对十个整数排列 int Pai(char *arr) { int i=0;...
C语言实验——素数
Description 输出100->200之间的素数的个数,以及所有的素数。 Input 无 Output 100->200之间的素数的个数,以及所有的素数。 Sample Output 21 101 103 ... 197 199  #include int main() {     int i,f=101,a;     for(i=100;i<=200;i )     {      
aks算法判定素数
Manindra Agrawal教授和他的两个学生Neeraj Kayal和Nitin Saxena在坎普尔印度技术研究所开发设计了AKS算法。AKS算法证明了可以应用一个确定的算法在输入规模的多项式时间内决定一个整数是否为素数的问题,而没有使用任何未证明的数学假定
素数(质数)判定(模板)
int is_prime(int n) { if(n&amp;lt;=1) return 0; int m=floor(sqrt(n)+0.5); for(int i=2;i&amp;lt;=m;i++) if(n%i==0) return 0; return 1; }
判定素数的自动机
怎么构建一个可以判定一个数是否是素数的图灵机。rn
C语言素数求解
此程序是作者本人在学习C语言过程中练习写的,主要内容为利用子函数求某一特定范围内的素数,简单易懂,可以作为C语言新手的很好参考案例。
C语言统计素数
文章出自个人博客https://knightyun.github.io/2018/03/30/c-prime-number.转载请申明 源码如下: #include&amp;amp;lt;stdio.h&amp;amp;gt; int main() { // 1-1000的素数 printf(&amp;quot;1-1000的素数: \n\n&amp;quot;); int i, j, co = 0; //设置co用于...
C语言找素数
找出0-50之间的所有素数,所谓素数就是只能被1和它本身整除的数字,比如:7,13,23等。 int m, n; for(m=2; m<=50; m++) { for(n=2; n<m; n++) { if(m%n==0) //n整除m跳出当前循环 break; }
c语言-素数和
素数和(5分) 题目内容: 我们认为2是第一个素数,3是第二个素数,5是第三个素数,依次类推。 现在,给定两个整数n和m,0&amp;lt;n&amp;lt;=m&amp;lt;=200,你的程序要计算第n个素数到第m个素数之间所有的素数的和,包括第n个素数和第m个素数。   输入格式: 两个整数,第一个表示n,第二个表示m。   输出格式: 一个整数,表示第n个素数到第m个素数之间所有的素数的和,包括...
C语言 MOOC 素数
#include <stdio.h> int main() { int M,N,sum=0,x=0,i; scanf ("%d %d",&M,&N); if (M>=1&&M<=N&&N<=500) { if(M==1) M++; for (M; M<=N; M++) { i
C语言实验-素数
题目描述 输出100->200之间的素数的个数,以及所有的素数。 输入 无 输出 100->200之间的素数的个数,以及所有的素数。 样例输出 21 101 103 ... 197 199   #include #include int main() {  int m,k;  int i;  int n=0,a=1,b;  b=a*a*a;  for(m
C语言素数幻方
这是素数的幻方, 代码简单易懂, 先找出所有素数 然后一个一个的比对
C语言求解素数
用于求解素数 需要用手机c4droid运行
c语言素数问题
#includernvoid main()rnint a,b,c=1;rn for(a=100;a<=200;a++)rn for (b=2;b
C语言素数的问题
我想要1,2都打印出来的?但是不行呢,请帮忙看看。rnrnrn/* HELLO.C -- Hello, world */rnrn#include "stdio.h"rn#include "conio.h"rnrnmain()rnrnint i,j,k,a[100],n=0;rnfor(i=1;i<=100;i++)rna[i-1]=i;rnfor(j=0;j<=99;j++)rnrnrn for(k=1;k<=a[j];k++)rn if(k==1)rn k=1;rn else if(k%a[j]==0)break;rn rn if(k>=a[j])rn printf("%d" ,a[j]);rn n=n+1;rn if(n%4==0)rn printf("\n");rnrn rn getch();rn
C语言:素数和斐波那契数列
今天讲两个比较经典的C语言例子,相信大家都比较熟悉。一个是判断并输出素数,另一个是斐波那契数列。素数:质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。例如数字7,我们从2开始找它的因子,7/2,7/3,7/4,7/5,7/6,都不等于0,所以7是素数。那我们就定义一个因子,让判断的数字去除以这个因子。斐波那契数列:指的是这样一个数...
c语言 素数01
#include&amp;lt;stdio.h&amp;gt; int main() { /*int a=10,b=10; printf(&quot;a++=%d\n&quot;,a++); printf(&quot;%d\n&quot;,a); printf(&quot;++b=%d\n&quot;,++b); printf(&quot;%d&quot;,b); //printf(&quot; hello word&quot;);*/ int i,a; scanf (&quot;%d&
C语言 素数和
昨天做题目的时候,遇到很多问题,我以为是软件dvc++的,今天复习完c语言才发现是自己的问题,现在很开心!!学而时习之,不亦乐乎!#include &amp;lt;stdio.h&amp;gt; int main() { //素数表 int m,n; scanf(&quot;%d&quot;,&amp;amp;n); scanf(&quot;%d&quot;,&amp;amp;m); int i,j; int cnt=0; int a[200]; f...
C语言 回文素数
回文素数(4分) 题目内容: 所谓回文素数是指对一个素数n,从左到右和从右到左读是相同的,这样的数就称为回文素数,例如11,101,313等。编程计算并输出不超过n(100&amp;lt;=n&amp;lt;1000)的回文素数,并统计这些回文素数的个数,其中n的值从键盘输入。 程序运行示例1 Input n: 100↙ 11 count=1 程序运行示例2 Input n: 1000↙ 11 101 131 1...
判定一个数是不是素数
判定一个数是不是素数 在检验质数时,可以利用合数x拥有满足p&amp;lt;=sqrt(x)的质因数p&quot;这一性质,故可将检验范围缩小到 2~sqrt(x) public static boolean isPrime(int num) { if ( num &amp;lt; 2 ) return false; int N = sqrt(num); for ( int i = 2; i &amp;lt...
关于判定素数
顺便在这里写一下关于return0和return1的区别:return0指的是循环正常结束,而return1代表循环异常结束。以上两段代码运行结果没有什么差别。
质数(素数)判定算法
基本判断思路: 在一般领域,对正整数n,如果用2到  之间的所有整数去除,均无法整除,则n为质数。 质数大于等于2 不能被它本身加1的数整除 bool isPrime(unsigned long n) { if (n <= 3) { return n > 1; } else if (n % 2 == 0 || n % 3 ==
【数据结构与算法】素数 判定
判定n是不是素数 素数的判定,如果只能被1和本身整除,这个数就是素数。特别地,1既不是素数也不是合数。 思路一:从2-n依次判定是不是能整除n; public boolean isPrime1(int n) { if (n &amp;lt;= 1) return false; for (int i = 2; i &amp;lt; n; i ++) ...
相关热词 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池 c#5.0 安装程序 c# 分页算法