在数字1、2、3、4、5、6、7、9,重复地用这些数字构造4个两位质数.那么,这4个两位质数分别是多少?c语言实现,给点思路
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/26 20:44:50
在数字1、2、3、4、5、6、7、9,重复地用这些数字构造4个两位质数.那么,这4个两位质数分别是多少?c语言实现,给点思路
在数字1、2、3、4、5、6、7、9,重复地用这些数字构造4个两位质数.那么,这4个两位质数分别是多少?
c语言实现,给点思路
在数字1、2、3、4、5、6、7、9,重复地用这些数字构造4个两位质数.那么,这4个两位质数分别是多少?c语言实现,给点思路
要重复使用的话,有很多质数,不重复的话这问题才有意义大概的程序可以这么写(有些细节我就简略了)
int num[8][2]={{1,0},{2,0},{3,0},{4,0},{5,0},{6,0},{7,0},{9,0}};
int primes[4];
int prime(int x)//判断是否质数的函数,是质数就返回1,否则返回0
{
……
}
int output()//输出保存在primes数组里的已产生的质数.
{
……
}
int work(int x)//递归产生质数,如果已经产生了4个,就输出
{
int i,j;
if(x>3)output();else
{
for(i=0;i
23,29,97,47
11、 13 、17 、19、 23 、29 、31 、37 、41、 43、 47 、53、 59 、61 、67 、71、 73 、79 、97
质数又称素数。指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。
61 23 47 59
我不确定是不是领会了你得要求。你可以看看。
先用这些数字构造出所有的两位数。剩下的工作就是从这些数中找出所有质数,你可以从2开始,把所有这些两位数中2的倍数删除,然后把所有3的倍数删除,……,直到99,这样你就得到了这堆两位数中所有的质数。
我不确定的是你是不是要求这4个质数的8个数字要在12345679中取而且不重复,要是这样的话,你再继续从已经选出的所有质数中挑出满足条件的即可...
全部展开
我不确定是不是领会了你得要求。你可以看看。
先用这些数字构造出所有的两位数。剩下的工作就是从这些数中找出所有质数,你可以从2开始,把所有这些两位数中2的倍数删除,然后把所有3的倍数删除,……,直到99,这样你就得到了这堆两位数中所有的质数。
我不确定的是你是不是要求这4个质数的8个数字要在12345679中取而且不重复,要是这样的话,你再继续从已经选出的所有质数中挑出满足条件的即可。
为了挑出这四个质数,你得让计算机找出构成每个质数的数字,接下来的事情就水到渠成了。
收起