IDから色違い

IDがわかっても、結局すべてのseedに対して色違い判定しないといけないので総当たり。
色違いの個体に出力条件つけてもいいか。

int main(){
unsigned id1,id2,seed0,seed1,seed2,pid1,pid2,color,re,status[7],i,j;

printf("method1:[PID] [PID] [IVs] [IVs]\nmethod2:[PID] [PID] [xxx] [IVs] [IVs]\nmethod3:[PID] [xxx] [PID] [IVs] [IVs]\nmethod4:[PID] [PID] [IVs] [xxx] [IVs]\n");
printf("method選択→");
scanf_s("%d",&method);
printf("ID入力(裏 表)(10進数)→");
scanf_s("%d %d",&id1,&id2);
printf("初期seed入力(16進数)→");
scanf_s("%x",&seed0);
re=1;
i=0;j=0;
seed1=seed0;
printf("消費\t seed \tH-A-B-C-D-S\t性格\t性格値\n");
while(re!=0){
seed2=(seed1*0x41C64E6D+0x6073)&0xFFFFFFFF;
pid1=seed1>>16;
pid2=seed2>>16;
color=id1^id2^pid1^pid2;
if(color<8){
Printstatus(seed1,status);
printf("%d\t%8x\t%2d-%2d-%2d-%2d-%2d-%2d\t%d\t%8x\n",i,seed1,status[0],status[1],status[2],status[4],status[5],status[3],status[6]%25,status[6]);
j++;
if(j==10){
j=0;
printf("\nさらに検索を続行する:1、終了する:0→");
scanf_s("%d",&re);
printf("\n");
}
}
if(seed2==seed0){
printf("全範囲検索終了:0→");
scanf_s("%d",&re);
}
seed1=seed2;
i++;
}
}