+ 7
What is wrong in this code?
This is a program to find superperfect no.s from 1 to n. Superperfect no(say a) is the one, sum of whose divisors =x(say) Then, Sum of divisors of x=a*2 The code us written in C.. #include <stdio.h> #include <conio.h> int super(int a) { int sum=0,b; for(b=1;b<=a;b++) { if(a%b==0) sum=sum+b; } return sum; } int main() { int n; scanf("%d",&n); int i; for(i=1;i<=n;i++) { int c=super(i); int d=super(c); if(d==i*2) printf("%d",i); } } Thanks
5 Answers
+ 4
First, scanf does not seems to work on sololearn playground ....
Second, conio.h might not be recognized here either and is a windows only library
Third, declaring variables in the for loop or just after any statement is bad practice in C and does not compile if you compile it with ANSI C.
Last, you forgot the return 0; statement :)
+ 7
Hey @Prunier The code is running now!
+ 7
@Lordkrishna He Bhagwan! Javascript ka tag hata diya gaya hai. Galti ke liye kshama mangte hai...
+ 5
Thanks @Prunier. But still wondering why my other codes worked well even without return 0. Why is it so??
+ 2
@ATD the compiler can have added it by default, I do not know and can't know without seeing the code :/
Even seeing them can not be enough to find out ^^