Rumah  >  Artikel  >  pembangunan bahagian belakang  >  golang判断是否是素数的方法

golang判断是否是素数的方法

尚
asal
2020-03-27 11:41:045304semak imbas

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
}

更多golang知识请关注PHP中文网golang教程栏目。

Atas ialah kandungan terperinci golang判断是否是素数的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:golang可以写单片机吗Artikel seterusnya:golang判断是文件还是文件夹