소수인지 여부를 확인하는 Golang 방법

풀어 주다: 2020-03-27 11:41:04
원래의
5352명이 탐색했습니다.

소수인지 여부를 확인하는 Golang 방법

소수 결정 방법: 숫자를 사용하여 2를 sqrt(이 숫자)-1로 각각 균등하게 나눌 수 있다는 의미입니다. 소수가 아니며 그 반대도 마찬가지입니다.

소수인지 판단:

func IsPrime(n int) bool {
	if n == 1 {
		return false
	}

	//从2遍历到n-1,看看是否有因子
	for i := 2; i < n; i++ {
		if n%i == 0 {
			//发现一个因子
			return false
		}
	}
	return true
}
로그인 후 복사

소수 최적화 알고리즘인지 판단:

func IsPrimeII(n int) bool  {
	//偶数一定不是素数
	if n>2 && n % 2 == 0{
		return true
	}

	//从2遍历到n的方根,看看是否有因子
	for i := 2; i <= int(math.Ceil(math.Sqrt(float64(n)))); i++ {
		if n%i == 0 {
			//发现一个因子
			return false
		}
	}
	return true
}
로그인 후 복사

더 많은 골랭 지식을 알고 싶다면 PHP에 주목하세요 중국 웹사이트 golang 튜토리얼 컬럼.

위 내용은 소수인지 여부를 확인하는 Golang 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿