Kurzusok
/
Go
Go
/
Feladatok
/
Állati varázslat
Állati varázslat

Állati varázslat

Tanulófeladat

Bevezetés

A math/rand csomag támogatást nyújt pszeudovéletlen számok generálásához.

Így generálhatsz egy véletlen egész számot 0 és 99 között:

n := rand.Intn(100) // n is a random int, 0 <= n < 100

A rand.Float64 függvény egy véletlen lebegőpontos számot ad vissza 0.0 és 1.0 között:

f := rand.Float64() // f is a random float64, 0.0 <= f < 1.0

Arra is van lehetőség, hogy egy szeletet (vagy más adatszerkezetet) összekeverj:

x := []string{"a", "b", "c", "d", "e"}
// shuffling the slice put its elements into a random order
rand.Shuffle(len(x), func(i, j int) {
	x[i], x[j] = x[j], x[i]
})

Magok

A math/rand csomag által generált számsorozatok nem valódi véletlen számok. Egy adott „mag” érték esetén az eredmény teljesen determinisztikus.

A Go 1.20-as és újabb verzióiban a magot automatikusan, véletlenszerűen választja ki, így a program minden futtatásakor más véletlenszám-sorozatot kapsz.

A Go korábbi verzióiban a mag alapértelmezés szerint 1 volt. Ezért ahhoz, hogy a program egyes futtatásainál különböző sorozatokat kapj, a véletlenszám-generátor magját kézzel kellett beállítanod, például az aktuális idővel, mielőtt bármilyen véletlen számot lekérnél.

rand.Seed(time.Now().UnixNano())

Utasítások

Elaine egy új gyerekjátékon dolgozik, amelyben állatok és varázspálcák szerepelnek. Itt az idő, hogy megírd a függvényeket a kockadobáshoz, a véletlenszerű pálcaenergia előállításához és egy szelet megkeveréséhez.

1. Kockadobás

Valósítsd meg a RollADie függvényt.

Ez lesz a hagyományos húszoldalú kocka, 1-től 20-ig terjedő számokkal.

d := RollADie() // d will be assigned a random int, 1 <= d <= 20

2. Pálcaenergia előállítása

Valósítsd meg a GenerateWandEnergy függvényt. A pálcaenergia egy véletlenszerű lebegőpontos szám legyen, amely nagyobb vagy egyenlő, mint 0.0, és kisebb, mint 12.0.

f := GenerateWandEnergy()  // f will be assigned a random float64, 0.0 <= f < 12.0

3. Egy szelet megkeverése

A játékban nyolc különböző állat szerepel:

  • ant
  • beaver
  • cat
  • dog
  • elephant
  • fox
  • giraffe
  • hedgehog

Írj egy ShuffleAnimals függvényt, amely egy szeletet ad vissza a nyolc állattal véletlenszerű sorrendben.

Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
Go Exercism

Készen állsz elkezdeni a(z) Állati varázslat feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Go nyelvet 34 fogalom165 feladat segítségével, valódi emberi mentorálással, mindez ingyen.