1

配列に 3 つの等しい数値があるかどうかを確認するための、すてきでクリーンな方法を探しています。

今私はこれを持っています:

for (int i = 0; i < nr ; i++)
{
    if(a[i] == 1){one++;}
    else if(a[i] == 2){two++;}
    else if(a[i] == 3){three++;}
    else if(a[i] == 4){four++;}
    else if(a[i] == 5){five++;}
    else if(a[i] == 6){six++;}
}

if(one >= 3){
    printf("Tre tal finns i ettor, 3p\n");
}else if(two >= 3){
    printf("Tre tal finns i tvår, 6p\n");
}else if(three >= 3){
    printf("Tre tal finns i treor, 9p\n");
}else if(four >= 3){
    printf("Tre tal finns i fyror, 12p\n");
}else if(five >= 3){
    printf("Tre tal finns i femmor, 15p\n");
}else if(six >= 3){
    printf("Tre tal finns i sexor, 18p\n");
}

ここで、a (整数) は 5 つの要素 (要素 1 ~ 6 を含む) の配列であり、「nr」は配列の長さを追跡するための変数です。

誰かがこれを行うためのより良い方法を見つけた場合は、返信してください。

4

4 に答える 4