Programmer l'ordinateur dans un jeu

Résolu
jomulex Messages postés 7 Statut Membre -  
jomulex Messages postés 7 Statut Membre -
Bonjour,
Bonjour,
J'ai un exercice de programmation en C. Je dois creer un jeu qui stimule un dé aleatoirement, un jeu entre un joueur etl'ordinateur, je peux bien programmer pour le joueur avec les aleatoires, mais je me demande comment faire jouer l'ordinateur quand sa sera son tour en utilisant le meme algorithme du jeu? Je ne sais vraiment pas par ou commencer.
Toute piste sera la bienvenue.
Merci bien.

8 réponses

  1. periplasme Messages postés 422 Statut Membre 53
     
    je vois pas ou est le soucis ... on choisit alétaroirement un chiffre de 1 a 6, puis on demande au joueur d'entrer la valeur sur laquelle il mise, puis on génere a nouveau un chiffre al"atoire pour le choix de l'ordinateur ... non ?

    au pire montre dans quel état est ton code, on pourra alors t'aider a comprendre les correction a faire !
    1
  2. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
     
    moi, je ne vois même pas comment stimuler un dé... peut être avec des décharges électriques.
    0
  3. jomulex Messages postés 7 Statut Membre
     
    Bonjour
    Stimuler un de c'est vous le lancer, il donne des chiffres aleatoires compris dans l'intervalle de 1 a 6.
    C'est juste une generation des nombres aleatoires dans cet intervalle.
    0
  4. periplasme Messages postés 422 Statut Membre 53
     
    je plussois jomulex : utilise ton algo d'alea pour la génération du dé, et du lancer de l'ordinateur ! c'est pas plus compliqué ;-)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
     
    Oui, mais un ordinateur c'est lourd à lancer !
    Sinon, je ne vois pas comment un ordinateur peut me lancer un dé...? Ha si, en le mettant sur le tiroir du lecteur de CD et en lui demandant de l'ouvrir. Il te reste à bricoler un support pour mettre le dé devant le tiroir comme ça l'ordinateur pourra jouer lui aussi.
    0
  7. jomulex Messages postés 7 Statut Membre
     
    Salut
    Merci periplasme
    C'est la ou il y a la probleme, je me demande comment utiliser le meme algorithme du joueur pour l'intelligence artificielle aussi. Existe-t-il une commande qui fait sa?
    0
  8. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
     
    non.
    0
  9. jomulex Messages postés 7 Statut Membre
     
    Merci periplasme

    Ce dont vous parlez a deja ete fait, j'ai ecris un code pour faire le choix du joueur qui commence en premier.
    Voici le code:
    Il est correct et il marche, mais mon probleme c'est de pouvoir faire jouer l'intelligence articielle quand sa sera son tour.

    En sortie sur la console, je veux avoir un truc du genre:

    JOUEUR AI(Intelligence art.)

    0 0

    espace pour lancer !

    AI
    3 3
    2 5
    4 9

    a chaque lancer vous decidez d'arreter en appuyant sur ENTER ou de continuer en appuyant sur SPACE
    /*************************************************************************
    * Par : Cédric BULA BULA MULENGA *
    * Date de correction : le 18 octobre 2011 *
    * Fichier : creé le 12 septembre 2011 *
    * Modifié le : 21 sept 2011, *
    * Ce programme est un simulateur du jeu PIG *
    * *
    * *
    * Le jeu se joue entre deux joueurs qui qui lancent un dé a tour de role *
    * et accumule des points pour des lancers differents de 1. A un lancer *
    * de 1, il perd son tour et ainsi de suite.
    *Les deux joueurs sont principalement un joueu (Vous p.ex) et l'intelligence *artificielle. *
    *************************************************************************/

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

    /*ALEATOIRE DU CHOIX DU PREMIER JOUEUR*/
    /* Cette fonction retourne le nombre aleatoire qui determinera qui jouera
    en premier entre le joueur et l'intelligence artificielle.
    joueur : valeur inferieure de l'intervalle, de type entier.
    ai : L'intelligence artificielle comme valeur superieure de lìntervalle
    aleatoire, de type entier.
    */
    int nb_aleatoire1(int joueur, int ai)
    {
    return (int)(joueur + rand() / (RAND_MAX + 0.01) * (ai - joueur + 1));
    }

    int main(void)
    {
    /*Affichage des regles du jeu a l'ecran*/
    printf("--------------------------------------------------------------------------------\n");
    printf("\t\t\t\t\t PIG\n");
    printf("--------------------------------------------------------------------------------\n\n");
    printf("Votre objectif:\t Atteindre 100 points avant l'intelligence\n");
    printf("\t\t artificielle afin de gagner la partie.\n\n");
    printf("La règle du jeu est telle que vous lancez un dé. Vous pouvez relancer tant que\n");
    printf("vous n'obtenez pas un 1 ou arrêter a n'importe");
    printf("quel moment. Si vous décidez d'arrêter, tous les lancers du tour");
    printf("en cours sont additionner a votre score. Si vous obtenez 1 avant");
    printf("de décider d'arrêter, vous avez aucun point\n\n\n");
    printf("BONNE CHANCE !!!\n\n");
    system("PAUSE");
    system("CLS");
    {
    /*Choix du joueur qui jouera en premier*/
    int i;
    srand((unsigned int) time(NULL)); /*Pour l'initialisation de rand*/
    rand();
    for(i = 0; i < 1; i++)
    {
    if (nb_aleatoire1(1, 2) == 1)
    {
    /*Affichage du message pour que le premier joueur selectionné commence*/
    printf("Vous commencez en premier\n\n");
    }
    else
    {
    printf("L'ordinateur commence en premier\n\n");
    }
    }
    }
    system("PAUSE");
    system("CLS");

    return 0;
    }
    0