我希望从 1-6 中选择一个随机数,但是如果程序选择了例如 1,我想确保在选择 2-6 之前不会再次使用它。我想这样做是为了有机会浏览所有选项,而不是连续 2 次或 3 次使用相同的选项,因为只有 6 个选项。请问有什么想法吗?
//choose random number for recipe
rand.Seed(time.Now().UTC().UnixNano())
myrand := random(1, 6)
fmt.Println(myrand)
...
处理它的函数
//random number function
func random(min, max int) int {
return rand.Intn(max-min) + min
}
我的程序中每次运行都使用 myrand 的部分在 if 语句中使用,并与当天选择的配方相关联
//choose random number for recipe
rand.Seed(time.Now().UTC().UnixNano())
myrand := random(1, 6)
fmt.Println(myrand)
//test below of random replacement
list := rand.Perm(6)
for i, _ := range list {
fmt.Printf("%d\n", list[i]+1)
}
//logic for recipe to choose
if myrand == 1 {
fmt.Println(1)
printRecipeOfTheDay(recipe1)
} else if myrand == 2 {
fmt.Println(2)
printRecipeOfTheDay(recipe2)
} else if myrand == 3 {
fmt.Println(3)
printRecipeOfTheDay(recipe3)
} else if myrand == 4 {
fmt.Println(4)
}
}
我想知道我是否做错了什么?我不确定如何在每次运行时使用该列表来生成一个新数字 (myrand),并且程序将能够记住上次运行时的最后一个数字 (myrand) 是多少?
拉莫斯之舞
相关分类