循环法求素数 1306 循环求素数10.1.5.253 ====== 1313 筛选法求素数10.1.5.253

  1 1306 循环求素数10.1.5.253
  2 
  3 C语言:循环结构9(求素数)
  4 时间限制(普通/Java):1000MS/3000MS            5 总提交:901            测试通过:396
  6 
  7 描述
  8 
  9 
 10 输入二个整数a和b(2<=a<b<1000),输出a和b之间的素数。
 11 
 12 
 13 输入
 14 
 15 
 16 有多组数据,每组包括两个整数a和b。
 17 
 18 
 19 输出
 20 
 21 a和b之间的素数,每组输出一行,每个素数后面有1个空格。
 22 
 23 样例输入
 24 
 25 2  10
 26 8  23
 27 
 28 样例输出
 29 
 30 2 3 5 7 
 31 11 13 17 19 23 
 32 
 33 
 34 
 35 
 36 
 37 
 38 #include <stdio.h>
 39 int prime(int x)
 40 {   int i;
 41     for(i=2; i<x; i++)
 42        if (x%i==0) return 0;
 43     return 1;    
 44 }
 45 int main()
 46 {
 47     int i,a,b;
 48     while ( scanf("%d%d",&a,&b)!=EOF )
 49     {        
 50         for (i=a; i<=b; i++)
 51            if (prime(i)==1) printf("%d ",i);
 52         printf("\n");
 53     }
 54     return 0;
 55 }
 56 
 57 
 58 *****************************************************************
 59 
 60 
 61 
 62 #include<stdio.h>
 63 int main()
 64 {
 65     int n,a,b,i;
 66     a>=2;
 67     a<b;
 68     b<1000;
 69    while( scanf("%d%d",&a,&b)==2)
 70 {    
 71 for(n=a;n<=b;n++)
 72     {
 73         for(i=2;i<=n-1;i++)
 74             if(n%i==0) break;
 75             if(i>=n)
 76                 printf("%d ",n);
 77      }
 78                 printf("\n");
 79 }return 0;
 80 } 
 81 
 82 
 83 
 84 
 85 
 86 
 87 #include <stdio.h>
 88 int main()
 89 {
 90 int a,b,i,j,k;
 91 while(scanf("%d%d",&a,&b)!=EOF)
 92 {
 93 for(i=a;i<=b;i++)
 94 {
 95 for(j=2;j<=i-1;j++)
 96 if(i%j==0)
 97 break;
 98 if(i==j)
 99 printf("%d ",i);
100 }
101 printf("\n");
102 }
103 return 0;
104 } 
View Code

 

1306 循环求素数10.1.5.253

C语言:循环结构9(求素数)
时间限制(普通/Java):1000MS/3000MS            5 总提交:901            测试通过:396

描述


输入二个整数a和b(2<=a<b<1000),输出a和b之间的素数。


输入


有多组数据,每组包括两个整数a和b。


输出

a和b之间的素数,每组输出一行,每个素数后面有1个空格。

样例输入

2  10
8  23

样例输出

2 3 5 7 
11 13 17 19 23 






#include <stdio.h>
int prime(int x)
{   int i;
    for(i=2; i<x; i++)
       if (x%i==0) return 0;
    return 1;    
}
int main()
{
    int i,a,b;
    while ( scanf("%d%d",&a,&b)!=EOF )
    {        
        for (i=a; i<=b; i++)
           if (prime(i)==1) printf("%d ",i);
        printf("\n");
    }
    return 0;
}


*****************************************************************



#include<stdio.h>
int main()
{
    int n,a,b,i;
    a>=2;
    a<b;
    b<1000;
   while( scanf("%d%d",&a,&b)==2)
{    
for(n=a;n<=b;n++)
    {
        for(i=2;i<=n-1;i++)
            if(n%i==0) break;
            if(i>=n)
                printf("%d ",n);
     }
                printf("\n");
}return 0;
} 






#include <stdio.h>
int main()
{
int a,b,i,j,k;
while(scanf("%d%d",&a,&b)!=EOF)
{
for(i=a;i<=b;i++)
{
for(j=2;j<=i-1;j++)
if(i%j==0)
break;
if(i==j)
printf("%d ",i);
}
printf("\n");
}
return 0;
}

  

//1306
 #include<stdio.h>
main()
{
    int a,b,max,min,n,m=0,i;
    while(scanf("%d%d",&a,&b)!=EOF)
    {
        max=a>b?a:b;
        min=a<b?a:b;
        while(max>=min)
        {
            for(i=1;min>i;)
            {
                if(min%i==0)
                { 
                    n=min/i;
                    m+=n;
                }
                i++;
            }
            if(min==m)
                printf("%d\ ",min);
            min++;
            m=0;
        }
        printf("\n");
    }return 0;
}


  

  

//1306

#include<stdio.h>
int main()
{
    int n,a,b,i;
    
   while( scanf("%d%d",&a,&b)==2)
{    
for(n=a;n<=b;n++)
    {
        for(i=2;i<=n-1;i++)
            if(n%i==0) break;
            if(i>=n)
                printf("%d ",n);
     }
                printf("\n");
}return 0;
} 

  

  // 1313


1
C语言:数组4(筛法求素数) 2 时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte 3 总提交:278 测试通过:147 4 5 描述 6 7 8 输入二个整数a和b(2<=a<b<1000),输出a和b之间的素数。 9 10 注意:必须使用数组筛法。 11 12 13 输入 14 15 有多组数据,每组包括两个整数a和b。 16 17 输出 18 19 a和b之间的素数,每组输出一行,两个素数之间用1个空格分开。 20 21 样例输入 22 23 2 10 24 8 23 25 26 样例输出 27 28 2 3 5 7 29 11 13 17 19 23 30 31 32 33 34 *************************************************************************** 35 36 37 38 39 #include<stdio.h> 40 void premer(int n) 41 { int i,flag=1; 42 for(i=2;i*i<=n;i++) 43 if(n%i==0) 44 flag=0; 45 if(flag) 46 printf("%d ",n); 47 } 48 int main() 49 { int a,b,i; 50 while(scanf("%d%d",&a,&b)!=EOF) 51 { for(i=a;i<=b;i++) 52 premer(i); 53 printf("\n"); 54 } 55 return 0; 56 } 57 58 59 60 61 62 63 64 #include<stdio.h> 65 66 int main() 67 { 68 int x[1000]={0},a,b,i,j; 69 70 for (i=2; i<1000; i++) 71 if ( x[i]==0) 72 for (j=i+i;j<1000;j=j+i ) 73 x[j]=1; 74 75 while (scanf("%d%d",&a,&b)==2) 76 { 77 for (i=a; i<=b; i++) 78 if (x[i]==0 ) printf("%d ",i); 79 printf("\n"); 80 } 81 82 return 0; 83 } 84 85 86 87 88 89 90 91 92 93 #include<stdio.h> 94 95 int main() 96 { 97 int x[1000]={0},a,b,i,j; 98 99 for (i=2; i<1000; i++) 100 for (j=i+i;j<1000;j=j+i ) 101 x[j]=1; 102 103 while (scanf("%d%d",&a,&b)==2) 104 { 105 for (i=a; i<=b; i++) 106 if (x[i]==0 ) printf("%d ",i); 107 printf("\n"); 108 } 109 110 return 0; 111 } 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 **************************************************************************** 130 131 #include<stdio.h> 132 int main() 133 { 134 int x[1000]={0},a,b,i,j; 135 for(i=2;i<1000;i++) 136 for(j=i+i;j<1000;j=j+i) 137 x[j]=1; 138 while(scanf("%d%d",&a,&b)==2) 139 { 140 for(i=a;i<=b;i++) 141 if(x[i]==0) printf("%d ",i); 142 printf("\n"); 143 } 144 return 0; 145 } 146 147 148 149 150 #include <stdio.h> 151 int main() 152 { 153 int k,a,b,x,y; 154 while(scanf("%d%d",&a,&b)!=EOF) 155 { 156 for(x=a;x<=b;x++) 157 { 158 for(y=2;y<=b-1;y++) 159 if(x%y==0)break; 160 if(y>=x) 161 printf("%d ",x); 162 } 163 printf("\n"); 164 } 165 } 166 167 168 169 170 171 172 173 #include <stdio.h> 174 int main() 175 { 176 int k,a,b,x,y; 177 while(scanf("%d%d",&a,&b)!=EOF) 178 { 179 for(x=a;x<=b;x++) 180 { 181 for(y=2;y<=x;y++) 182 if(x%y==0) break; 183 if(x==y) 184 printf("%d ",x); 185 } 186 printf("\n"); 187 } 188 } 189 190 191 192 193 194 195 196 #include <stdio.h> 197 int main(int argc, char *argv[]) 198 { 199 int a,b,i,j; 200 while(scanf("%d%d",&a,&b)!=EOF) 201 { 202 for(i=a;i<=b;i++) 203 { 204 for(j=2;j<=b;j++) 205 if(i%j==0)break; 206 if(i==j)printf("%d ",i); 207 }printf("\n"); 208 } 209 return 0; 210 }

 

 

posted @ 2013-11-19 12:37  博园少主  阅读(859)  评论(0编辑  收藏  举报