@[BalanceSegment](/user/664105) 啊?请问是ssu函数里cout那边的问题吗
by libin13815498262 @ 2023-03-15 21:42:05
@[libin13815498262](/user/922071) 函数名调用错了,不是```bool(j)```是```su(j)```
by seanlsy @ 2023-03-15 21:53:38
并且这个 ```i``` 为啥要到 ```n(n-2)/2```
by seanlsy @ 2023-03-15 21:54:31
@[seanlsy](/user/674247) 改了一下,还是不行,我不清楚我的代码逻辑哪里出了问题orz,太悲伤了
by libin13815498262 @ 2023-03-15 21:55:29
@[seanlsy](/user/674247) 明晓了,谢谢大哥指点,我犯的低级错误太智障了
by libin13815498262 @ 2023-03-15 21:57:13
@[20120307zzy](/user/836954) 谢谢哥,我想的2应该不用判断可以直接返回的
by libin13815498262 @ 2023-03-15 21:58:20
@[libin13815498262](/user/922071) 我的代码如下
```
#include<bits/stdc++.h>
using namespace std;
int a(int j)
{
int flag=0;
for(int i=2;i<=sqrt(j);i++)
if(j%i==0)
flag=1;
return flag;
}
int main()
{
int n;
cin>>n;
cout<<4<<"="<<2<<"+"<<2<<endl;
for(int i=6;i<=n;i+=2)
{
for(int j=3;j<=i;j+=2)
{
int flag=0;
flag+=a(j);
flag+=a(i-j);
if(flag==0)
{
cout<<i<<"="<<j<<"+"<<i-j<<endl;
break;
}
}
}
return 0;
}
```
4直接输出循环从6起
by x1489631649 @ 2023-03-19 13:17:49
@[libin13815498262](/user/922071)
```
#include<bits/stdc++.h>
using namespace std;
int a(int j)
{
int flag=0;
for(int i=2;i<=sqrt(j);i++)
if(j%i==0)
flag=1;
return flag;
}
int main()
{
int n;
cin>>n;
for(int i=4;i<=n;i+=2)
{
for(int j=2;j<=i;j+=2)
{
int flag=0;
flag+=a(j);
flag+=a(i-j);
if(flag==0)
{
cout<<i<<"="<<j<<"+"<<i-j<<endl;
break;
}
}
}
return 0;
}
```
这样会卡在4,后面不打印
by x1489631649 @ 2023-03-19 13:20:38
@[x1489631649](/user/780505) 忘记说了,问题已经解决了,谢谢大佬补充
by libin13815498262 @ 2023-03-19 14:46:42