You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.0 KiB
49 lines
1.0 KiB
/*
|
|
Landesamt für Geoinformation und Landentwicklung, Referat 35
|
|
Einführung in die Sprache Go, 25.7.2017
|
|
Lektion 1: Gaußsche Normalverteilung nach dem Zufallsprinzip
|
|
*/
|
|
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"math/rand"
|
|
"time"
|
|
)
|
|
|
|
const (
|
|
anzahlTöpfchen int8 = 25
|
|
anzahlKugeln int32 = 100000
|
|
)
|
|
|
|
var timestamp [2]int64
|
|
|
|
func main() {
|
|
|
|
var (
|
|
töpfchenAlle [anzahlTöpfchen]int16
|
|
töpfchenTmpZähler int16
|
|
)
|
|
|
|
timestamp[0] = time.Now().Unix()
|
|
for k := (int32)(1); k <= anzahlKugeln; k++ {
|
|
töpfchenTmpZähler = 0
|
|
for i := (int8)(0); i < anzahlTöpfchen-1; i++ {
|
|
|
|
if yesnotrigger := func() bool {
|
|
rand.Seed(time.Now().UnixNano()) //rand.New(rand.NewSource(time.Now().UnixNano())).Float64()
|
|
if rand.Float64() < 0.5 {
|
|
return true
|
|
} else {
|
|
return false
|
|
}
|
|
}(); yesnotrigger == true {
|
|
töpfchenTmpZähler++
|
|
}
|
|
}
|
|
töpfchenAlle[töpfchenTmpZähler]++
|
|
}
|
|
fmt.Println(töpfchenAlle)
|
|
timestamp[1] = time.Now().Unix()
|
|
fmt.Printf("\nProzess ist fertig und hat %v Sekunden gedauert!\n\n", (timestamp[1] - timestamp[0]))
|
|
}
|
|
|