• wikioi 1430 素数判定


    /*======================================================================
    题目描述 Description
    质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。
    素数在数论中有着很重要的地位。比1大但不是素数的数称为合数。1和0既非素数也非合数。质数是与合数相对立的两个概念,二者构成了数论当中最基础的定义之一。基于质数定义的基础之上而建立的问题有很多世界级的难题,如哥德巴赫猜想等。算术基本定理证明每个大于1的正整数都可以写成素数的乘积,并且这种乘积的形式是唯一的。这个定理的重要一点是,将1排斥在素数集合以外。如果1被认为是素数,那么这些严格的阐述就不得不加上一些限制条件。
    概念
    只有1和它本身两个约数的自然数,叫质数(Prime Number)。(如:由2÷1=2,2÷2=1,可知2的约数只有1和它本身2这两个约数,所以2就是质数。与之相对立的是合数:“除了1和它本身两个约数外,还有其它约数的数,叫合数。”如:4÷1=4,4÷2=2,4÷4=1,很显然,4的约数除了1和它本身4这两个约数以外,还有约数2,所以4是合数。)
    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,在100内共有25个质数。
    注:(1)1既不是质数也不是合数。因为它的约数有且只有1这一个约数。
    (2)2和3是所有素数中唯一两个连着的数 .
    
    
    
    输入描述 Input Description
    第一行输入一个正整数n,n<=30000
     
    输出描述 Output Description
    如果该数是质数,则输出	
    否则输出
    
    样例输入 Sample Input
    输入样例1
    13
    输入样例2
    8
    样例输出 Sample Output
    样例输出1
    	
    样例输出2
    
    
    
    ========================================================================*/
     1 #include<stdio.h>
     2 #include<math.h>
     3 int main()
     4 {
     5     int n,i,t;
     6     scanf("%d",&n);
     7     t=sqrt(n);
     8     for(i=2;i<=t;i++)
     9     {
    10         if(n%i==0)
    11             break;
    12     }
    13     if(i>t) printf("\t
    ");
    14     else printf("\n
    ");
    15     return 0;
    16 }
     1 /*-----------------------------------------------------
     2 题目描述:
     3     素数又称质数。指在一个大于1的自然数中,除了1和此整数自身外,
     4 不能被其他自然数整除的数。素数在数论中有着很重要的地位。
     5 你的任务是求出比n小的所有素数。
     6 关于输入:
     7 一个整数n (3<=n<1000)
     8 关于输出:
     9 所有比n小的素数,每个素数占一行
    10 -------------------------------------------------------*/
    11 #include<stdio.h>
    12 int main()
    13 {
    14     int n,i,j,a[10001];
    15     scanf("%d",&n);
    16     for(i=2;i<n;i++)
    17     {
    18         a[i]=i;
    19     }
    20     for(i=2;i<n;i++)
    21     {
    22         for(j=i+1;j<n;j++)
    23         {
    24             if(a[j]!=0&&j%i==0)  a[j]=0;
    25         }
    26     }
    27     for(i=2;i<n;i++)
    28     {
    29         if(a[i]!=0)   printf("%d
    ",a[i]);
    30     }
    31     return 0;
    32 }
    /*======================================================================
    预先把一个范围内所有的质数求出来存储到数组当中。 
    需要判断则检查是否在数组内部。 
    ========================================================================*/
    #include<stdio.h>
    #include<math.h>
    int isPrime(int n);//判断n是否质数:是则返回1,否则返回0
    void fun(int n);//把小于或等于n的所有质数输出到文件prime.in 
    int main()
    {
        fun(30000);
        return 0;
    }
    int isPrime(int n)//判断n是否质数:是则返回1,否则返回0 
    {
        int i,t;
        if(n<2) return -1;
        t=sqrt(n);
        for(i=2;i<=t;i++)
        {
            if(n%i==0)
                break;
        }
        if(i>t) return 1;
        else return 0;
    }
    void fun(int n)//把小于或等于n的所有质数输出到文件prime.in 。在具体应用当中可以调用该函数先输出到文件形成静态数组的数据,接着复制数据到代码当中的数组赋值语句当中。再有判断质数的即可直接查找数组了。 
    {
        int i,first=1;;
        FILE *p;
        p=fopen("prime.in","w");
        for(i=2;i<=n;i++)
        {
            if(isPrime(i)==1)
            {
                if(first==1)
                {
                    first=0;
                    fprintf(p,"%d",i);
                }
                else fprintf(p,",%d",i);
            }
        }
    } 
  • 相关阅读:
    VS2010调用外部webservice
    VS2013如何调用别人发布的WebService程序
    VS2010 根据WSDL文件(java Web Service)生成.cs文件
    vs2010 创建和发布 webservice
    CXF+Spring+Tomcat 案例
    LDAP方式连接AD获取用户信息
    webService和RMI
    当spring抛出异常时出现的页面的@ExceptionHandler(RuntimeException.class) 用法
    eclips中maven解决jsp报错的问题
    用idea搭建一个简单的SSM的Demo
  • 原文地址:https://www.cnblogs.com/huashanqingzhu/p/3501968.html
Copyright © 2020-2023  润新知