[C] is_prime 함수 구현

숭글·2022년 4월 25일
0

is_prime function 구현

int	ft_is_prime(int nb)
{
	long	num;

	num = 2;
	if (nb <= 1)
		return (0);
	while (num * num <= nb)
	{
		if (nb % num == 0)
			return (0);
		num++;
	}
	return (1);
}

제곱근을 사용하지 못하고 구현해야했어서 루트 대신 분모에 들어갈 수를 제곱하여 사용하였다.
int의 최대 수를 넘는 경우가 발생해서 연산 속도가 매우 길어졌다.
분모가 될 변수를 long으로 선언하여 문제를 해결했다.


I implemented this function without math herder. It means i couldn't use a sqrt(). so i used denominator variable squared. I declared the num(denominator variable) with long because of overflow caused by square.

profile
Hi!😁 I'm Soongle. Welcome to my Velog!!!

0개의 댓글