Chương trình yêu cầu kiểm tra xem số nhập vào có phải là Số không đẹp hay không. Số không đẹp là số chỉ có Thừa số nguyên tố là 2,3,5. Ví dụ như 12 là số không đẹp còn 21 thì không phải.
Ý tưởng của em là tạo 1 cái hàm, chia số được nhập vào lần lượt cho 2,3,5. Bắt đầu sẽ chia cho 2 đến khi không chia được nữa sẽ chia cho 3, và tiếp tục. Nếu như chia cho cả 2,3,5 mà kết quả phép chia vẫn không bằng 1 thì sẽ hiểu là nó còn có một ước khác 2,3,5 và nó không phải là số không đẹp.
Em chỉ mới học các cấu trúc điều khiển và hàm nên chỉ áp dụng được như vậy, test thử vài kết quả thì nó đúng nhưng khi upload lên web thì nó báo Kết quả sai. Em nghĩ mình dùng lệnh Continue không đúng. Mong mọi người giúp với. Em cám ơn.
#include <stdio.h>
int uoc (int n)
{
if (n==1)
return 1;
else
{ while (n!=1)
{ if(n%2==0)
{n = n/2;
if (n==1)
return 1;
else
continue;}
else if (n%3==0)
{n = n/3;
if (n==1)
return 1;
else
continue;}
else if (n%5==0)
{n = n/3;
if (n==1)
return 1;
else
continue;}
else
return 0;
}
}
}
int main ()
{ int n;
printf ("Nhap n= ");
scanf("%d", &n);
if (uoc(n)==1)
printf ("YES");
else
printf ("NO");
}