so hoan hao

Số Hoàn Hảo

#include<iostream.h>

void sohh(int n)

{

int i,j,s;

for(i=2;i<=n;i++)

{

s=1;

for(j=2;j<=i/2;j++)

if(i%j==0)

s=s+j;

if(s==i)

cout<<i<<endl;

}

}

void main()

{

int n;

cout<<"Nhap so nguyen bat ky:";cin>>n;

sohh(n);

}

/*

Vi du: ta co ket qua 28 de co duoc:

i=28 luc nay j chay tu 2->14

i%j==0 thi s=s+1 nghia la:

j=2, i=24 i%j thoa ->s=1+2

j=3, i=24 thoa ->s=1+2+3

j=4, i=24 thoa ->s=1+2+3+4

j=5,i=24 Khong thoa.

j=6 thoa ->s=1+2+3+4+6

j=7 ko thoa

j=8 thoa ->s=1+2+3+4+6+8=24 thoa nho vao

dieu kien tiep theo(s==i)

*/

Theo khuyến cáo của TruTra các bạn nên thêm break vào sau dong cout<<i;

Theo Nguồn của chip.

Bạn đang đọc truyện trên: truyentop.pro