Correction

Correction

Correction ! J'espère que vous ne trichez pas !
On commence par inclure les headers.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>


stdio.h permet d'utiliser printf et scanf.

stdlib.h permet d'utiliser rand et srand.

time.h permet d'utiliser time.

Les variables

Avant de commencer à implémenter (coder) la fonction main, il faut réfléchir aux variables nécessaires.
Il nous faut juste 2 variables :

La variable nombreEntre qui stocke le nombre de l'utilisateur au fur et à mesure.

La variable nombreSecret qui stocke un nombre aléatoire entre 1 et 100.

N'oubliez les constantes MIN et MAX pour tirer au sort nombreSecret.
En résumé, on obtient ces déclarations suivantes :

int nombreEntre = 0, nombreSecret = 0;
const int MIN = 1, MAX = 100;
srand(time(NULL)); // Initialisation de la donnée seed

nombreSecret = (rand() % (MAX + 1 - MIN)) + MIN; // MIN <= nombreSecret <= MAX

printf("*** Bienvenue dans Plus ou Moins ***\n\n"); // On affiche un titre

Jusque là, rien de nouveau, l'algorithme tirant un nombre au hasard a été expliqué plus haut, n'hésitez pas à le relire (ou à le lire).
J'ai aussi ajouté un titre pour situer l'utilisateur.

do/while

Ensuite, j'ai utilisé la boucle do/while puisqu'on doit faire au moins une itération (on est donc sûr que le joueur pourra jouer et c'est le but).
C'est dans cette boucle qu'on va écrire le reste du programme. Si le nombreEntre est égal au nombreSecret, on sort de la boucle. Donc tant que l'utilisateur n'a pas trouvé le nombre secret, il continue à jouer.

do
{
    // Du code source...
} while (nombreEntre != nombreSecret);

Dans cette boucle, on demande un nombre à l'utilisateur :

do
{
    printf("Entrez un nombre : ");
    scanf("%d", &nombreEntre);
} while (nombreEntre != nombreSecret);

Et avec ce nombreEntre, on effectue des tests pour lui afficher si son nombre est trop petit ou trop grand ou s'il a gagné !

do
{
    printf("Entrez un nombre : ");
    scanf("%d", &nombreEntre);

    if (nombreEntre < nombreSecret)
        printf("C'est plus !\n\n");
    else if (nombreEntre > nombreSecret)
        printf("C'est moins !\n\n");
    else
        printf("Bravo, vous avez trouve le nombre secret !\n\n");
} while (nombreEntre != nombreSecret);

Je n'ai pas mis mes instructions entre accolades, je trouve que c'est aussi clair comme ça.

Le programme est terminé, on peut ajouter une pause à la fin du programme pour pouvoir le partager.
Voici donc le programme complet :

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
    int nombreEntre = 0, nombreSecret = 0;
    const int MIN = 1, MAX = 100;
    srand(time(NULL)); // Initialisation de la donnée seed

    nombreSecret = (rand() % (MAX + 1 - MIN)) + MIN; // MIN <= nombreSecret <= MAX

    printf("*** Bienvenue dans Plus ou Moins ***\n\n"); // On affiche un titre

    do
    {
        printf("Entrez un nombre : ");
        scanf("%d", &nombreEntre);

        if (nombreEntre < nombreSecret)
            printf("C'est plus !\n\n");
        else if (nombreEntre > nombreSecret)
            printf("C'est moins !\n\n");
        else
            printf("Bravo, vous avez trouve le nombre secret !\n\n");
    } while (nombreEntre != nombreSecret);

    system("pause");

    return 0;
}

L'inconvénient, c'est que l'utilisateur ne peut pas perdre, il faudrait améliorer ce programme...

Créé avec HelpNDoc Personal Edition: Créer des documents d'aide HTML facilement