Comment générez-vous un nombre aléatoire lorsqu'un bouton est cliqué et en fonction de ce numéro, différentes actions ont lieu.
J'ai probablement besoin d'un nombre aléatoire de 1-10. p>
6 Réponses :
Comme obj-c est un superset de langage C, vous pouvez utiliser librement rand < / a> fonction p>
Il y a quelques problèmes de Rand () qu'il existe des charges de messages sur et ils vous recommandent d'utiliser arc4random () code> à la place. Cette fonction est fixée automatiquement et a un algorithme «meilleur» pour la génération de nombre.
int number = (arc4random() % 2) + 1;
Si vous avez besoin d'un nombre aléatoire cryptographiquement sécurisé, vous pouvez utiliser: comme décrit ici . P> p>
et s'il vous plaît, s'il vous plaît, si vous générez un nombre aléatoire de 1 à 10 ... Utilisez un commutateur plutôt qu'un tas de si {} else si {} clauses:
Mieux encore, utilisez un algorithme approprié pour générer des nombres aléatoires compris entre 0 et N i> à partir d'une distribution uniforme de nombres aléatoires compris entre 0 et n_max i>: celui mis en œuvre dans Java.Util.random #nextint (int) est assez bien pensé:
J'ai eu un bon succès avec Arc4Random () - Juste Module pour définir une gamme. Par exemple: P>
arc4random ()% 100; p>
J'éviterais activement d'utiliser Rand () car il ne produit pas de nombres vraiment aléatoires et qu'il doit être ensemencé. P>
NSArray *arr=[NSArray arrayWithObjects:@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"10", nil]; NSMutableArray *valueArray=[[NSMutableArray alloc]init]; int count=0; while(count<5) { int rand= arc4random()%10; NSLog(@"%d",rand); NSString *str=[arr objectAtIndex:rand]; if(![valueArray containsObject:str]) { [valueArray addObject:str]; count++; } } NSLog(@"%@",valueArray);
Stackoverflow.com/questions/160890/... < / a>