IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

un probleme de codage


Sujet :

Algorithmes et structures de données

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 4
    Points : 2
    Points
    2
    Par défaut un probleme de codage
    Bonjour à tous,

    Je suis étudiant en sciences cognitives et je réalise une étude statistique sur le poker. Il s'agit de la variante Texas Hold'em dans laquelle chaque joueur possède 2 cartes de départ, puis des cartes communes sont déposées sur la table (5 au maximum). La main d'un joueur correspond à la meilleure combinaison de 5 cartes entre ses cartes de départ et les cartes communes:

    Voici ce que j'ai dans mon fichier:

    1 2 3 4 5 6 7 8 9 10 11 12
    7 C T D 7 H T H K D 8 D
    A S K C 7 H T H K D 8 D
    Q H 3 H 7 H T H K D 8 D
    Q H 2 S 7 H T H K D 8 D

    Les symboles sont en anglais. Chaque représente la main d'un joueur.
    Chaque carte est encodée dans 2 colonnes: la première indique la valeur numérique de la carte (du 2 à l'As), la seconde indique la couleur de la carte (H: Heart, C: Club, D: Diamond, S: Spade). Les colonnes 1 à 4 correspondent aux 2 cartes de départ de chaque joueur. Les colonnes suivantes correspondent aux cartes communes (il y en a 4 dans cet exemple).

    Question: comment construire un script qui permette de coder le jeu de chaque joueur (exemple: paire, brelan, suite, etc.)?

    Dans cet exemple, le script devrait fournir au final que le joueur 1 possède deux paires (7 et T), le joueur 2 possède la plus haute paire (K), le joueur 3 possède un tirage couleur (il a 4 cartes à coeur et il lui en manque une pour faire la couleur), et le joueur 4 ne possède rien.

    Je ne vois pas trop comment faire. Si vous avez une idée, je suis preneur.

    Merci,
    Vincent

  2. #2
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Points : 4 661
    Points
    4 661
    Par défaut
    Bonjour,

    Ton problème pour l'instant me semble plutôt d'ordre algorithmique que lié à MATLAB. De plus, il faudrait que tu précises un peu la (les) méthode(s) que tu souhaites utiliser.

    En gros, ta question est un peu vaste pour qu'on puisse t'aider efficacement et pour l'instant je vois pas trop le lien avec MATLAB.

    Bonne journée,
    Duf

  3. #3
    Membre émérite
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Points : 2 841
    Points
    2 841
    Par défaut
    Bonjour.
    Une solution sous matlab (reste à traiter les suites):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    A= ['7' 'C' 'T' 'D' '7' 'H' 'T' 'H' 'K' 'D' '8' 'D';
    'A' 'S' 'K' 'C' '7' 'H' 'T' 'H' 'K' 'D' '8' 'D';
    'Q' 'H' '3' 'H' '7' 'H' 'T' 'H' 'K' 'D' '8' 'D';
    'Q' 'H' '2' 'S' '7' 'H' 'T' 'H' 'K' 'D' '8' 'D'];
     alphabet=['1' '2' '3' '4' '5' '6' '7' '8' '9' 'A' 'K' 'Q' 'H' 'S' 'C' 'T' 'D'];
    for n=1:17
         B=A==alphabet(n);
        for k=1:4
        M(n,k)=sum(B(k,:));
    end
    end
    M'
    Donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     0     0     0     0     0     0     2     1     0     0     1     0     2     0     1     2     3
         0     0     0     0     0     0     1     1     0     1     2     0     2     1     1     1     2
         0     0     1     0     0     0     1     1     0     0     1     1     4     0     0     1     2
         0     1     0     0     0     0     1     1     0     0     1     1     3     1     0     1     2
    A revoir, je n'ai pas tenu compte de la couleur !

  4. #4
    Membre émérite
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Points : 2 841
    Points
    2 841
    Par défaut
    Un peu mieux (lourd !), reste couleur et suite) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    clear
    A= ['7' 'C' 'T' 'D' '7' 'H' 'T' 'H' 'K' 'D' '8' 'D';
        'A' 'S' 'K' 'C' '7' 'H' 'T' 'H' 'K' 'D' '8' 'D';
        'Q' 'H' '3' 'H' '7' 'H' 'T' 'H' 'K' 'D' '8' 'D';
        'Q' 'H' '2' 'S' '7' 'H' 'T' 'H' 'K' 'D' '8' 'D'];
     cartes=['1' '2' '3' '4' '5' '6' '7' '8' '9' 'T' 'J' 'Q' 'K' 'A'];
     couleur=['H' 'C' 'D' 'S'];
    for n=1:14
      B=A==cartes(n); 
       for k=1:4
        M(n,k)=sum(B(k,:));
       end
    end
    R=M';
     for i=1:4
         w=' '
      for j=1:14      
        xx= (find(R(i,:)> 0));
        w=cartes(xx)
    end
    main(i,1:length(w))=w;
    nb_cartes(i,1:length(xx))=R(i,xx);
    end
    main
    nb_cartes
    donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    main =
    78TK  
    78TKA 
    378TQK
    278TQK
     
    nb_cartes =
         2     1     2     1     0     0
         1     1     1     2     1     0
         1     1     1     1     1     1
         1     1     1     1     1     1

Discussions similaires

  1. Probleme de codage dans eclipse (controle lecteur cd)
    Par argon dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 22/07/2007, 10h38
  2. probleme de codage
    Par Hamdi_Maazoul dans le forum XML/XSL et SOAP
    Réponses: 10
    Dernier message: 07/06/2007, 12h02
  3. [WD10] Quelques problemes de codage
    Par orditosh dans le forum WinDev
    Réponses: 3
    Dernier message: 09/05/2007, 19h21
  4. [MySQL] Probleme de codage mysql
    Par toddy_101 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 26/04/2007, 17h51
  5. [MySQL] probleme de codage langue arabe
    Par nourdev dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 11/10/2006, 11h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo