我有
int y = (arc4random()%4)+1;
Run Code Online (Sandbox Code Playgroud)
因此它会生成1到4的随机数.
我想问一下是否有办法让3号出局,所以只有数字1,2和4有机会生成.
谢谢!
int allowdNumbers[3] = {1, 2, 4}
int index = arc4random()%3;
int number = allowdNumbers[index];
Run Code Online (Sandbox Code Playgroud)
小智 9
您始终可以从0-2(arc4random() % 3)中随机生成并使用该数字作为幂:
2^0 = 1
2^1 = 2
2^2 = 4
Run Code Online (Sandbox Code Playgroud)
那里你从1-4没有3你随机.在C:
int y = 1 << (arc4random() % 3);
Run Code Online (Sandbox Code Playgroud)