Hàm demuoc của bạn làm gì vậy?
Định dùng để trưng bày à!
Sao lại đem in ra số ước của n thì là 5 hãng còn may đó.
Visual C++ Code:
{ for(j=2;j<n;j++) if(i%j==0) break; if(i==j) dem++//Thay nó xuống đây. }
Code:#include<stdio.h> #include<conio.h> #include<math.h> int demuoc(int n) { int dem=0; for(int i=1;i<n;i++) { if(n%i==0) { dem++; } } return dem; } void main() { int i,n,j,ok=1,k=1; printf("\n nhap vao 1 so nguyen duong : "); scanf("\n%d",&n); for(i=2;i<n;i++) if(n%i==0) { ok=0; break; } if(ok) printf("\n so %d la so nguyen to",n); else printf("\n so %d khong phai la so nguyen to ",n); for(i=2;i<n;i++) { for(j=2;j<n;j++) if(i%j==0) break; if(i==j) printf("\n so nguyen to nho hon %d :%d",n,i); } int dem = demuoc(n); printf("\n so %d co %d so nguyen to ",n,dem); getch();
Đã được chỉnh sửa lần cuối bởi thang : 15-05-2008 lúc 08:49 PM.
Hàm demuoc của bạn làm gì vậy?
Định dùng để trưng bày à!
Sao lại đem in ra số ước của n thì là 5 hãng còn may đó.
Visual C++ Code:
{ for(j=2;j<n;j++) if(i%j==0) break; if(i==j) dem++//Thay nó xuống đây. }
Mình viết chương trình này cũng không cần hàm,khá ngắn gọn bạn tham khảo nhé (mình viết trên Dev C++):
Code:#include <stdio.h> #include <conio.h> main() { int n,i,j,d=0,count=0; printf("\nNhap vao gia tri n="); scanf(" %d",&n); if(n==1) printf("Day ko phai la so nguyen to"); if(n>2) { printf("\nCac so nguyen to nho hon %d la:\n\n",n); for(i=2;i<=n;i++) { { if(n%i==0) count++; } for(j=2;j<=n;j++) if(i%j==0) break; if(i==j) { d++; printf(" %d ",i); } } } printf("\n\nCo tat ca %d so nguyen to",d); if(count==1) printf("\n\n%d la so nguyen to",n); else printf("\n\n%d khong phai la so nguyen to",n); getch(); }
cảm ơn 2 bạn nhiều