Моя цель - разработать игру в кости следующим образом:
Бросьте 1 кубик, если он четный, вы получаете один дополнительный кубик и теперь можете бросить 2 кубика. Если все кубики четные, вы получаете один дополнительный кубик и так далее...
Моя проблема в том, что я не могу понять, как я могу создать общий способ сделать это.
В последнее время я думал о чем-то вроде
- n = 1
- бросьте n*dice ("бросок" даст мне случайное число), а затем проверьте, какой кубик четный...
Может кто-нибудь сказать мне, как лучше всего идти, пожалуйста? Спасибо
Обновление После ваших комментариев я, наконец, попытался использовать NSMutableArray для хранения значений своих кубиков, что работает хорошо, ожидайте, что после сохранения значения в моем NSMutableArray оно останется то же самое и не может быть изменено, как я хотел бы, чтобы это было похоже на новый бросок костей. Я предполагаю, что это происходит из-за того, что мое случайное число хранится в неизменном NSNumber? Не могли бы вы, ребята, проверить мой код...
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
// my int values
int valueOne = arc4random()%6+1;
int valueTwo = arc4random()%6+1;
int valueThree = arc4random()%6+1;
int valueFour = arc4random()%6+1;
int valueFive = arc4random()%6+1;
// Wrapped into objects to add to my array
NSNumber* diceOne = [NSNumber numberWithInt:valueOne];
NSNumber* diceTwo = [NSNumber numberWithInt:valueTwo];
NSNumber* diceThree = [NSNumber numberWithInt:valueThree];
NSNumber* diceFour = [NSNumber numberWithInt:valueFour];
NSNumber* diceFive = [NSNumber numberWithInt:valueFive];
// my array called "myDice"
NSMutableArray* myDice = [[NSMutableArray alloc] initWithCapacity:6];
// add the objects
[myDice addObject:diceOne];
[myDice addObject:diceTwo];
[myDice addObject:diceThree];
[myDice addObject:diceFour];
[myDice addObject:diceFive];
// Sorting my array
int i;
NSNumber *myObject;
for(i=0;i<[myDice count];i++)
{
myObject = [myDice objectAtIndex:i];
NSLog(@"\n\nyour die %d is %@.",i+1, myObject);
}
return 0;
}