前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >求大于整数m且紧靠m的k个素数 及 判断一个数是否为素数的方法

求大于整数m且紧靠m的k个素数 及 判断一个数是否为素数的方法

作者头像
猿人谷
发布2018-01-17 15:43:25
1.3K0
发布2018-01-17 15:43:25
举报
文章被收录于专栏:猿人谷猿人谷

题目:

  请编写一个函数void fun(int m,int k ,int xx[]),该函数的功能是:将大于整数m且紧靠m的k个素数存入xx所指的数组中。

  例如,若输入:17,5,则应输出:19,23,29,31,37。

质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数。

代码语言:javascript
复制
 1 #include<stdio.h>
 2 #include<math.h>
 3  
 4 bool isPrime(int n)
 5 { 
 6     for(int i = 2 ; i <= sqrt(n) ; i++)
 7     {
 8         if(n % i == 0)
 9             return false;
10     }
11     return true;
12 }
13  
14 void fun(int m , int n , int xx[])
15 {
16     int count = 0;
17     for(int j = m + 1 ; count < n ; j++)
18     {
19         if(isPrime(j))
20         {
21             xx[count++] = j;                   
22         }      
23     }
24 }
25  
26 int main()
27 {
28     int m , n , zz[1000];
29     printf("please input two integers: ");
30     scanf("%d,%d",&m,&n);
31  
32     fun(m , n , zz);
33  
34     for( m = 0 ; m < n ; m++)
35     {
36         printf("%d  " , zz[m]);
37     }
38     printf("\n");
39  
40     return 0;
41 }

 --------------------------------------------------------------------------------------------------------------------------------------------------------------

现在再看到上面写的代码,觉得以前写的代码,竟然开了那么大的数组,代码挺粗糙的。

代码语言:javascript
复制
 1 #include<iostream>
 2 #include<math.h>
 3 using namespace std;
 4  
 5 bool isPrime(int n)
 6 { 
 7     for(int i = 2 ; i <= sqrt(n) ; i++)
 8     {
 9         if(n % i == 0)
10             return false;
11     }
12     return true;
13 }
14  
15 void fun(int m , int n , int xx[])
16 {
17     int count = 0;
18     for(int j = m + 1 ; count < n ; j++)
19     {
20         if(isPrime(j))
21         {
22             xx[count++] = j;                   
23         }      
24     }
25 }
26  
27 int main()
28 {
29     int m , n ;
30     int *zz = new int[];
31 
32     cout<<"please input two integers:";
33     cin>>m>>n;
34  
35     fun(m , n , zz);
36  
37     for( m = 0 ; m < n ; m++)
38         cout<<zz[m]<<" ";
39 
40     cout<<endl;
41  
42     return 0;
43 }
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2013-07-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档