본문 바로가기
Golang

Golang 난수 생성(math/rand)

by 시바도지 2023. 6. 30.
반응형

Go를 사용하여 난수를 발생하기  위해서는 `math/rand` 패키지와 `time` 패키지를 사용한다.

`time` 패키지를 사용하는 이유는 `time.Now().UnixNano()` 함수를 사용하여 현재 시간을 기반으로 난수 시드를 생성할 수 있다. 이를 통해서 매번 다른 시드 값으로 난수를 생성할 수 있다.

 

 

다음의 예제는 1부터 10까지 숫자 중 난수를 생성하는 예제이다.

package main

import (
	"fmt"
	"math/rand"
	"time"
)

func main() {
	rand.Seed(time.Now().UnixNano())
	randomNumber := rand.Intn(10) + 1
	fmt.Println(randomNumber)
}

`rand.Seed()` 함수를 사용하여 현재 시간을 시드로 설정하고, `rand.Intn()` 함수를 사용하여 1부터 10까지 난수를 생성한다.

`rand.Intn(n)` 함수는 0부터 n-1 까지의 범위에서 난수를 생성한다.

반응형

댓글