30/09/2018, 21:28
Gặp lỗi trong đoạn code in ra số hoàn thiện nhỏ hơn n
nhập n sau đó in ra số hoàn thiện nhỏ hơn n 27: Một số hoàn thiện là một số có tổng các ước số của nó (không kể nó) ví dụ 6=1+2+3 nhưng em gặp khó khăn chỉ in ra được số 1 dù nhập bất kỳ số mấy
#include <iostream>
using namespace std;
int nhap(int &n)
{
cout<<"nhập n:";cin>>n;
}
int kt(int n)
{
int i,s;
for(i=1;i<n;i++)
{
if(n%i==0)
{
s=s+i;
if(s==n)
{
return 1;
}
else
{
return 0;
}
}
}
}
void in(int n)
{
int i;
for(i=1;i<n;i++)
{
if(kt(i)==1)
{
cout<<i;
}
}
}
int main(int argc, char** argv) {
int n;
nhập(n);
in(n);
return 0;
}
Bài liên quan
Cần xem lại cách trình bày code, tiếp đến tìm hiểu cách thức hoạt động của return
[quote=“duc_nguyen7, post:1, topic:27993”]
nhập(n);
[/quote]Có vụ này luôn cơ à ?
Không nên ghi chữ có dấu !
Cái này cộng 1 lần rồi xét true false luôn à ?
Dấu ngoặc bạn sắp xếp tùm lum nữa !
Bạn nên học lại kiến thức chứ vầy là không ổn đâu