0
已采纳
朱优扬
中级天翼
中级天翼
你的整体思路没有问题,但是要注意:
1.有一个Error的情况(我不知道你有没有判断)
2.循环枚举每个数时,应该遍历到n-2,因为如果遍历到n,那么我们假设n和n+2都是质数,那么就多了一个素数对,而这个素数对是不符合要求的!
0
小鸡咕咕叫15856960106
高级守护
高级守护
思路:
1.输入
2.循环找到n-2(不是n!注意!),如果有素数对(i是素数&&i+2是素数),那么输出
3.如果没有,输出error
------------------------------------------------------------------------------------------------------------------
由于没有你的完整代码,所以只能展示可能错的地方
1.判断素数x<0是返回false(判断素数函数老师告诉我们写i<=sqrt(x))
2.没有循环到n-2,而是n
0
0
汪宇航
新手启示者
新手启示者
首先,你的函数是没问题的,思路:for(1~n-2){
假如说i和2+i都为质数,则输出;
标志位=true;
}
如果标志位为false,输出error
0
李子杰
资深光能
资深光能
1.定义一个bool类型变量和一个int型变量,并输入int型变量
(暂且bool型为f,int型为n)
2.从2~n-2(注意了!!!不是n!!!)
判断函数i是否是正确的以及i+2是否是正确的
如果两个都正确,f改变值,输出i和i+2还有换行
3.写函数(重头戏来了!!!)
bool函数传一个参数,暂且叫n
里面定义一个标志位,暂且叫c,初值为正确的
从2~sqrt(n)里判断
如果n除以i没有余数 直接将c置为错误,并跳出循环
最后返回c的值
4.最终判断f是不是等于0,如果是,输出"Eroor"
(PS:已经很详细了,请慎重思考,照此思路写答题)