这样就可以打印了。数字在1到6(含)之间随机分配。用作命令行参数的骰子数。因此,在我的情况下./roll 6会打印6个骰子,随机数最多为6。
package mainimport ( "fmt" "math/rand" "os" "strconv" "time")func main() { numDice := 1 if len(os.Args) > 1 { i, err := strconv.Atoi(os.Args[1]) if err != nil { fmt.Println(err) } numDice = i } seed := rand.NewSource(time.Now().UnixNano()) randomNumber := rand.New(seed) die := []string{ " ------ ", "| | ", "| | ", "| | ", " ------ ", } for i := 0; i < 5; i++ { for j, n := 0, numDice; j < n; j++ { if i == 3 { fmt.Printf("| %d | ", randomNumber.Intn(5)+1) } else { fmt.Print(die[i]) } } fmt.Println() }}


