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

C Discussion :

Projet en C - Jeu de Domino


Sujet :

C

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 7
    Points : 2
    Points
    2
    Par défaut Projet en C - Jeu de Domino
    Voilà, après avoir terminé un projet sur linux, nous avons un nouveau projet à réaliser. Le but est de concevoir un jeu de domino en langage C. En fait, on souhaite écrire un programme en langage C permettant de jouer aux dominos contre l'ordinateur.

    Quelques indications:
    Il y a 28 dominos et 7 par joueurs (2joueurs)
    C'est celui qui a le domino le plus fort qui commence
    Chaque joueur doit garder ses dominos cachés
    Lorsqu'un joueur n'a pas de domino à jouer, il passe son tour.
    Le permier qui a posé tous ces dominos à gagner
    Si personne ne pose tous ses dominos, c'est celui qui en a le moins qui gagne.
    Notre professeur nous a dit d'utiliser exclusivement les listes

    En fait, j'ai beaucoup de mal à démarer et j'aimerai pour l'occassion avoir un peu d'aide, voire quelques pistes pour démarer.
    Merci

  2. #2
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Pour le moment c'est plutôt de l'algo.
    Explique nous ce que tu as déjà envisagé, comment conçois-tu tes données tes modules avant de te lancer dans la programmation C.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    Justement, je ne sais pas comment démarrer, c'est bien là le problème!!

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    92
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 92
    Points : 101
    Points
    101
    Par défaut


    Personne ne va te faire ton projet
    Tu as forcément déjà étudié des choses en C : lesquelles?
    Ensuite, réfléchit à comment faire ton jeu à partir de ce que tu sais faire en C

    Ensuite poste nous tes idées et on pourra oeut-être alors t'aider!

  5. #5
    Expert éminent
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Points : 6 486
    Points
    6 486
    Par défaut
    Même sans produire de code cherche en pseudo code, si tu as des difficultés pour certains trucs on pourra t'aider. Mais on ne te fera pas ton projet.

  6. #6
    Membre émérite

    Homme Profil pro
    Inscrit en
    Juillet 2003
    Messages
    2 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 2 075
    Points : 2 844
    Points
    2 844
    Par défaut
    C'est toujours pareil: ton problème; tes données et ce que tu envisages pour résoudre le problème. Ensuite tu écris cela en pseudo-lgage puis en C et c'est seulement là que l'on intervient
    PS:je serais bien en peine de faire ça moi car je n'ai plus joué aux dominos depuis des décennies
    il me semble cependant qu'ici le point clé réside dans l'agencement que tu feras des valeurs:chaque domino ayant deux valeurs etc...tu parlais de listes mais moi ça me fait penser plutot aux hashes
    Ensuite la pioche c'est un tas eh bien un tas c'est un structure informatique aussi

  7. #7
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Un domino c'est un couple de 2 nombres compris entre 0 et 6. le couple peut se représenter par une liste [V1, V2].
    Les dominos sont donc mis dans une liste [[0,0,], [0,1], ... [1,1] [,12] .. [6,6]].
    Chaque joueur recoit une liste de dominos extraits de cette liste.

    Les problèmes sont (entre autres)
    modéliser une liste de deux nombres (en pseudo langage puis en C)
    modéliser une liste de dominos en pseudo langage puis en C.
    représenter à l'écran un domino en fonction des deux valeurs
    effectuer le distribution des dominos
    jouer un domino en fonction de ce qui a déjà été joué.

    Voilà, c'est un tout petit début.
    A toi de jouer
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  8. #8
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par Trap D
    A toi de jouer
    Je passe !
    Pas de Wi-Fi à la maison : CPL

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    En fait, comment peut-on distribuer aléatoirement 7 dominos à chaque joueur? Et comment choisir un domino aléatoirement pour le début de la partie?

  10. #10
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par ludwig16
    En fait, comment peut-on distribuer aléatoirement 7 dominos à chaque joueur? Et comment choisir un domino aléatoirement pour le début de la partie?
    Plusieurs méthodes. Par exemple :

    Tu remplis un tableau avec toutes les pièces (dans l'ordre, c'est plus simple), puis tu tires au "hasard" (pseudo-random : srand()/rand(), lire la FAQ) 7 indices differents...

    Sinon tu mélanges le tableau (tirer des paires d'indices au hasard, inverser les valeurs...), et ensuite tu mets les 7 premiers dans dans le tableau du joueur 1, les 7 suivants dans le tableau du jouer 2 etc...

    Il faut un peu reflechir, mais ce n'est pas trop méchant.

    Commence déjà par constituer le tableau des 28 dominos.
    Pas de Wi-Fi à la maison : CPL

  11. #11
    Membre éclairé Avatar de reggae
    Profil pro
    Inscrit en
    Août 2005
    Messages
    773
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2005
    Messages : 773
    Points : 795
    Points
    795

  12. #12
    Rédacteur en Chef
    Avatar de Marc Lussac
    Homme Profil pro
    Responsable marketing opérationnel
    Inscrit en
    Mars 2002
    Messages
    28 664
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable marketing opérationnel
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2002
    Messages : 28 664
    Points : 61 613
    Points
    61 613
    Par défaut
    Voila un programme de jeux de domino : http://www.ccdominoes.com/ ca te donnera peut etre des idées
    Ne pas me contacter pour le forum et je ne répondrai à aucune question technique. Pour contacter les différents services du club (publications, partenariats, publicité, ...) : Contacts

    15 000 offres d'emploi développeurs et informatique
    Cours et tutoriels développeurs et informatique
    Les FAQ's & Les Livres
    Codes sources
    Téléchargements

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2006
    Messages : 10
    Points : 12
    Points
    12
    Par défaut
    Salut, hier j'avais un peu de temps a perdre alors j'ai commencé ton programme.....J'ai commenté en anglais par habitude... En tk, t'es grd jte dis pas quoi faire, juste fais en bon usage.

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
     
    void show_domino(int * domino)
    	{
    		int i,a,b;
    		for(i=0 ; i<7 ; i++)
    			{
    				a = domino[i]/10 ;
    				b = domino[i]-a*10 ;
    				printf("Your domino #%d is : %d | %d \n", i+1 , a , b );
    			}
    		return ;
    	}
     
    int main(int argc , char * argv[])
    	{
    		// Declaring variables :
    		int i,j,k=0;
    		int domino[28], player[2][7] , randomino ;
     
    		// Set center of entropy for rand()
    		srand((int) time(NULL)) ;
     
    		// Generate all possible dominos
    		for(i = 0 ; i < 7 ; i++)
    			for(j = i ; j < 7 ; j ++)
    				{
    					// A domino | A | B | is represented AB ( ex : 1|2 -> 12 )
    					domino[k++] = i*10 + j ;
    				}
     
    		// Give 7 domino to each player :
    		for(i=0 ; i<7 ; i++)
    			{
    				// Select a random dominos for each player :
    				for(j=0 ; j<2 ; j++)
    					{
    						do
    						{
    							// Random domino :
    							randomino = (double) rand()/(RAND_MAX + 1) * 28 ;
    							// Assign domino to player :
    							player[j][i] = domino[randomino] ;
    							// All that if domino is not already taken of course :
    						} while(domino[randomino] == 0) ;
     
    						// Set domino as taken :
    						domino[randomino] = 0 ;
    					}
    			}
     
    		// Show player's dominos :
    		show_domino(player[0]) ;
     
    		return 0;
    	}

  14. #14
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par chetane
    Cute !
    Pas de Wi-Fi à la maison : CPL

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2006
    Messages : 10
    Points : 12
    Points
    12
    Par défaut
    ^^
    et le code en général t'en penses quoi ?

  16. #16
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    En fait ce programme que tu as poster distribue sept dominos aléatoirement?

  17. #17
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2006
    Messages : 10
    Points : 12
    Points
    12
    Par défaut
    oui il commence par generer les 28 dominos. Ensuite en selectionne aleatoirement 7 par joueur. et finalement affiche les 7 dominos. Tu peux essayer de compiler et executer le programme plusieurs fois, la sequence sera diferente

Discussions similaires

  1. [UC] Projet Java/UML Jeu type Memory
    Par akito dans le forum Cas d'utilisation
    Réponses: 11
    Dernier message: 17/04/2008, 13h33
  2. [PHP-SQL] Projet concret de jeu en ligne
    Par Jamesdu67 dans le forum Projets
    Réponses: 0
    Dernier message: 06/02/2008, 22h53
  3. Réponses: 11
    Dernier message: 12/11/2007, 08h03
  4. programmation de jeu du domino
    Par dinamed dans le forum Développement 2D, 3D et Jeux
    Réponses: 1
    Dernier message: 26/03/2007, 09h42
  5. Réponses: 4
    Dernier message: 13/02/2006, 21h58

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