سلام دوستان این کد برنامه که مشخص میکنه عدد دریافتی اول یا خیر ؟
میخواستم اون بخشی که تابع اغاز میشه برام توضیح بدید اون true و false متوجه نمیشم برای چی ، اصلا قرار داده شده که مقدار 0 و 1 قرار داده !؟
Prime هم که معادل true , false هم معلوم نیست از کجا اومده
اون a هم چرا ازش جذر گرفته شده که sqrt قرار داده ؟!
کد:
#include <stdio.h>
#include <math.h>
#define TRUE 1
#define FALSE 0
int IsPrime(int a);
int main()
{
int a;
printf("Enter an integer: ");
scanf("%d", &a);
if(IsPrime(a))
{
printf("%d is a PRIME number.\n",a);
}
else
{
printf("%d is a NOT PRIME number.\n",a);
}
printf("\n");
return 0;
}
int IsPrime(int a)
{
int prime = TRUE;
int i;
for(i = 2; i <= sqrt(a); i++)
{
if(a % i == 0)
{
prime = FALSE;
break;
}
}
return prime;
}