Heim >Backend-Entwicklung >Golang >Golang-Methode zur Bestimmung, ob es sich um eine Primzahl handelt

Golang-Methode zur Bestimmung, ob es sich um eine Primzahl handelt

尚
Original
2020-03-27 11:41:045420Durchsuche

Golang-Methode zur Bestimmung, ob es sich um eine Primzahl handelt

So bestimmen Sie Primzahlen: Teilen Sie 2 durch sqrt (diese Zahl)-1. Wenn sie gleichmäßig teilbar ist, bedeutet dies, dass die Zahl keine Primzahl ist , sonst handelt es sich um eine Primzahl.

Bestimmen Sie, ob es sich um eine Primzahl handelt:

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
}

Bestimmen Sie, ob es sich um eine Primzahl handelt. Optimierungsalgorithmus:

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
}

Für weitere Golang-Kenntnisse achten Sie bitte auf Golang-Tutorial -Spalte der chinesischen PHP-Website.

Das obige ist der detaillierte Inhalt vonGolang-Methode zur Bestimmung, ob es sich um eine Primzahl handelt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn