私はムービーごとに26の映画と3つの質問でデータベースを持っています。NSMutablearrayのNSMutablearray
私の行ったことは、自分のプログラムがランダムにデータベースから質問を選択し、それが画面に表示されていることです。私が問題を抱えているのは、この質問を記録して、それが再び選択されないようにすることです。
は、これまでのところ、私はこれで遊んでされています:
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におけるインデックスのいずれかで異なっていないということです、それらはすべて同じです。 usedQuery_idが1であり、usedMovie_idが最初のループで13である場合、usedQuery_idは1であり、usedMovie_idは2番目のループでは10です。 usedQuestion_idは、インデックス13のusedMovie_idで(最初のループから)1,3に更新されます。
また、どの質問に正しく答えられたのかを記録する必要があるため、正しく回答されていない質問のみが表示されます。
それぞれ独自のデータを持つ26個のnsmutablearraysを作成する必要はありません。
私はnsdictionaryやデータベースが必要かもしれないと思っています。 また、質問ごとに答えが出された後にランダム化ではなく、最初からランダム化して各質問を繰り返します。
ありがとう、私はあなたの質問の私のリストについて言いましたが、それを変えていないと考えていました。 – bigubosu