Does anyone knows why this isn't working?
I got a problem where I must make a program in C++ which finds the percet number between 2 and number m(which user enters).
Anyway,I made the program to see if the number you entered is perfect number but I can't make it so that it calculates which number between 2 and m is the perfect.
Sorry my english is not so good.

Note:The perfect number is number which is equal to the sum of his (dividive numbers?)
I'm sorry I don't know how to write it in english,but here is example:
28=1+2+4+7+14
Number 28 can be divided by number 1,2,4,7,14.Sum of that dividing is 28.
Here's the number which checks is the entered number(only one number)perfect:
*********************
#include<iostream.h>
void main(){
int x,suma=0,number;
cout<<"Please insert number which will be checked if it is a perfect\n"; cout<<"number:\n";
cin>>broj;
for(int i=2;i<=number;i++){
if(broj%i==0){
suma=suma+(number/i);
}
}
if(suma==number)cout<<number;
cin>>x; //so that the program doesn't close
return;
}
********************************
And here is the program that isn't working somehow...:
*******************************
#include<iostream.h>
void main(){
int m,x,suma=0;
cout<<"Please enter number m:\n";
cin>>m;
for(int i=2;i<=m;i++){
for(int j=2;j<=i;j++){
if(i%j==0)
suma=suma+(i/j);
}
if(suma==i)
cout<<i<<endl;
}
cin>>x; //so that the program doesn't close
return;
}
***********************************
What do you think?
Please tell me,I'm very interested in this problem,and I've been smashing my head for so long...