Viết chương trình liệt kê các số đẹp như vậy trong đoạn giữa hai số nguyên dương cho trước.
INPUT
1 50
OUTPUT
4 8 9 16 25 27 32 36 49
Code của mình như sau
#include <stdio.h>
#include <math.h>
bool isPrime(int n)
{
if(n<2)
return false;
for(int i=2 ; i*i<=n ; i++){
if(n%i==0)
return false;
}
return true;
}
int ChiaHet(int m, int n)
{
for(int i= m ; i<=n ; i++)
{
for(int d = 2; d <= 10; d++)
{
if (isPrime(d) == true)
{
if(i % d == 0 && i % d*d == 0)
{
printf("%d ",d);
}
}
}
}
}
int main()
{
int m, n;
scanf("%d", &m);
scanf("%d", &n);
ChiaHet(m,n);
return 0;
}
Nhưng mình kiểm tra thì không ra đúng kết quả. Các bạn giúp mình tìm lỗi với?