-2

検証を使用して、数値が小さいか、大きいか、または乱数と等しいかを確認する「数字を推測する」ゲームを実行しようとしていました。数値が高すぎる場合に再試行するループ検証を実行したい!

#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <cs50.h>
int
main(void)
{
    srand(time(NULL));
    int skittles = rand() % 1024;
    printf("%d\n", skittles);
    printf("choose a number betwen 1 to 1024\n");



    int numpessoa = GetInt();

    printf("%d\n", numpessoa);

if (numpessoa < skittles)
{
    printf("numpessoa < skittles");
    numpessoa = GetInt();
}

if (numpessoa > skittles)
{
    printf("numpessoa > skittles");
    numpessoa = GetInt();
}

if (numpessoa == skittles)
{
    printf("numpessoa == skittles");
}
return 0;
}
4

1 に答える 1

2

これが宿題である場合は、その解決策を直接尋ねるべきではありません。いくつかの疑似コードしか提供できません。

loop forever 
    get user's guess
    check guess against answer
        guess differs answer ,then provide some hints 
        guess equals answer,tell user he/she is right and break out of this loop

そして、あなたのコードには別のバグがあります。ランダムな整数の 1024 モジュロは、0 から 1023 の間です。

于 2014-01-24T00:36:58.047 に答える