Golang program to demonstrate the rand.Seed() function

Here, we are going to demonstrate the rand.Seed() function in Golang (Go Language).
Submitted by Nidhi, on April 29, 2021 [Last updated : March 05, 2023]

rand.Seed() function in Golang

Problem Solution:

Here, we will demonstrate the use of the rand.Seed() function. The rand.Seed() function is used to set a seed value to generate random numbers. If the Seed value is the same then rand.Intn() function will generate the same series of random numbers. If we change the seed value then it will generate different series of random numbers.

Program/Source Code:

The source code to demonstrate the rand.Seed() function is given below. The given program is compiled and executed on the ubuntu 18.04 operating system successfully.

Golang code to demonstrate the example of rand.Seed() function

// Golang program to demonstrate the
// rand.Seed() function

package main

import "math/rand"
import "fmt"
import "time"

// Entry point for the program
func main() {
	rand.Seed(100)
	fmt.Println("Random number: ", rand.Intn(786))
	fmt.Println("Random number: ", rand.Intn(786))

	rand.Seed(100)
	fmt.Println("Random number: ", rand.Intn(786))
	fmt.Println("Random number: ", rand.Intn(786))

	fmt.Println("\n")

	rand.Seed(time.Now().UnixNano())
	fmt.Println("Random number: ", rand.Intn(786))
	fmt.Println("Random number: ", rand.Intn(786))

	rand.Seed(time.Now().UnixNano())
	fmt.Println("Random number: ", rand.Intn(786))
	fmt.Println("Random number: ", rand.Intn(786))
}

Output:

Random number:  91
Random number:  470
Random number:  91
Random number:  470


Random number:  657
Random number:  585
Random number:  27
Random number:  342

Explanation:

In the above program, we declare the package main. The main package is used to tell the Go language compiler that the package must be compiled and produced the executable file. Here, we imported the required packages to predefined functions.

In the main() function, we used rand.Seed() function to set seed value. Here, we set a seed value 100 two times then it is generating the same series of random numbers. After that, we used time as a seed value then the different series of random numbers are generating.

Golang math/rand Package Programs »





Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.