У меня есть база данных с 26 фильмами и 3 вопросами на фильм.
Что я сделал, так это то, что моя программа случайным образом выбирает вопрос из базы данных, и он отображается на экране. У меня проблемы с записью этого вопроса, чтобы он не был выбран снова.
Пока я играл с этим:
usedMovie_id = [[NSMutableArray alloc] initWithCapacity:26];
usedQuestion_id = [[NSMutableArray alloc] initWithCapacity:4];
for (NSInteger i = 0; i < 26; ++i)
{
[usedMovie_id addObject:[NSNull null]];
}
for (NSInteger i = 0; i < 4; ++i)
{
[usedQuestion_id addObject:[NSNull null]];
}
while (i < 10) {
int ii = [self genRandomNumberForMovies];
int jj = [self genRandomNumberForQuestions:25];
NSLog(@"ii %d, jj %d", ii,jj);
[usedQuestion_id replaceObjectAtIndex:jj withObject:[NSNumber numberWithInt:jj]];
[usedMovie_id replaceObjectAtIndex:ii withObject:usedQuestion_id];
i++;
//NSLog(@"movie_id array %@", usedMovie_id);
}
Моя проблема в том, что массив usedQuestion_id не отличается ни по одному из индексов usedMovie_id, они все одинаковые. Если usedQuestion_id имеет 1, а usedMovie_id - 13 в первом цикле, а затем usedQuestion_id - 1, 3, а usedMovie_id - 10 во втором цикле. UsedQuestion_id обновляется до 1, 3 для usedMovie_id с индексом 13 (из первого цикла).
Также мне нужно записать, на какой вопрос был дан правильный и неправильный ответ, поэтому я показываю только те вопросы, на которые не был дан правильный ответ.
Я не хочу создавать 26 nsmutablearrays каждый со своими данными.
Я думаю, что мне может понадобиться база данных или даже база данных ..
Также я мог рандомизировать в начале и проходить по каждому вопросу вместо того, чтобы рандомизировать после того, как на каждый вопрос был дан ответ.