как получить случайный номер +1 или -1 (просто нужно для "+" или "-") - PullRequest
0 голосов
/ 09 марта 2011

мне нужно случайное число, но только +1 или -1 (чтобы было определено направление силы в box2d), как получить это только два случайных числа? спасибо!

Ответы [ 3 ]

2 голосов
/ 09 марта 2011
int random = arc4rand()%2 ? -1 : 1;
1 голос
/ 09 марта 2011
#include <stdlib.h>
(arc4random() % 2) * 2 - 1 
  • arc4random () дает случайное целое число
  • (arc4random ()% 2) принимает значение 0 или 1
  • (arc4random ()% 2) * 2 принимает значение 0 или 2
  • (arc4random ()% 2) * 2 - 1 дает вам -1 или 1
1 голос
/ 09 марта 2011
int result = (WhateverRandomNumbersComeFromInObjectiveC() >= 0.5) ? 1 : -1;
...