0
已解决
李瑞曦
高级天翼
高级天翼
帮帮我看一下这题,25。@大佬们!!!(我的代码他只输出0)
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int n,s=0;
cin>>n;
for(int i=1;i<=sqrt(n);i++)
{ int f=0;
for(int j=2;j<=sqrt(i);j++){
if(i%j==0){
f+=1;
}
}
if(f==0&&n-f==0)
s+=1;
}
cout<<s;
}
李瑞曦在2020-04-19 17:28:35追加了内容
- #include<iostream>
- #include<cmath>
- using namespace std;
- int main()
- {
- int n,f=0,s=0;
- cin>>n;
- for(int i=2;i<=n-1;i++)
- {
- if(n%i==0){
- s++;
- f=1;
- }
- }
- if(f==1){
- cout<<s;
- }
- if(f==0)
- {
- cout<<0;
- }
- }
- 改了一下,成十分了
李瑞曦在2020-04-20 09:58:23追加了内容
问题已自行解决,我应该采纳谁???
0
已采纳
康曦
中级光能
中级光能
呃,你的代码好像复杂了许多,为啥要到sqrt(n)呢,还双重循环,又不是求质因数,核心代码:
循环2开始<n
如果(n求余i==0){
输出i
标志旗=1
}
最后判断如果标志旗=0 就输出0
康曦在2020-04-19 17:12:00追加了内容
望采纳
康曦在2020-04-19 17:14:06追加了内容
完了,我发布了代码
0
0
0
0
0
0