Đề bài:Nhập vào 1 số nguyên dương n. Viết chương trình kiểm tra số đó có phải là số hoàn thiện hay không?
Số hoàn thiện là số có tổng các ước của nó bằng chính nó.
Ví dụ:
n= 6 có các ước 1,2,3; có 1+2+3=6=n =>n=6 là số hoàn thiệt.
Dưới đây là đoạn code tham khảo: (chạy trên C-free)
#include<iostream.h>
int kiemtrasohoanthien(int n)
{
if(n<=0) return 0;
long s=0;
for(int i=1;i<n;i++)
{
if(n%i==0)
s=s+i;
}
if(s==n) return 1;
else return 0;
}
/* ham sau dau la liet ke cac so hoan thien nho hon n
void lietkecacsohoanthien(int n)
{
for(int i=0;i<n;i++)
if(kiemtrasohoanthien(i)==1)
cout<<i<<" ";
}
*/
int main()
{
int i, n;
long S;
do
{
cout<<"Moi nhap n= ";
cin>>n;
if(n <= 0)
cout<<"\n Moi ban nhap lai n!";
}while(n <= 0);
if(kiemtrasohoanthien(n)==1)
cout<<"La so hoan thien!"<<endl;
else
cout<<"Ko la so hoan thien!"<<endl;
}
Kết của của chương trình:
>>Có thể bạn quan tâm:
Theo Đinh Quang Trưởng