[C] aide svp!!
Fermé
debutant
-
14 déc. 2007 à 16:31
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 17 déc. 2007 à 08:46
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 17 déc. 2007 à 08:46
6 réponses
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
14 déc. 2007 à 16:47
14 déc. 2007 à 16:47
void initialiser_vecteur ( *vect_ordi[0],*limite)
il manque les types, et si j'ai ien compris *vect_ordi[0] n'a aucun sens !
Il faut remettre les type lors de l'implementation des fonctions.
Travail un plus sur les pointeur, je pense que tu as mal compris leurs fontionnements!
il manque les types, et si j'ai ien compris *vect_ordi[0] n'a aucun sens !
Il faut remettre les type lors de l'implementation des fonctions.
Travail un plus sur les pointeur, je pense que tu as mal compris leurs fontionnements!
j'ai rechangé mes petites faute mais au niveau des pointeurs , je dois dire que j'ai du mal!!!
vous pouvez m'aidez à construire ce programme !!!!
merci
[CODE]#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#define MAX 4
/* prototype fontion*/
/* fin prototype*/
/* fonction principale main*/
int main (void)
{
int vect_ordi[MAX], vect_joueur[MAX], limite= 4;
int ntour=0;
int i;
printf(" ***MASTER MIND** \n");
printf(" essaie de deviner une combinaison de quatre couleurs parmi les sept proposés\n");
printf(" vous avez droit a 10 essais!!!!!\n");
printf(" couleurs proposés\n");
printf(" 1 = rouge\n");
printf(" 2 = bleu\n");
printf(" 3 = vert\n");
printf(" 4 = jaune\n");
printf(" 5 = blanc\n");
printf(" 6 = orange\n");
printf(" 7 = noir\n");
/* combinaison_ordi=*/ initialiser_vecteur ()/*( int *vect_ordi[0],int *limite);*/
//on tire au hasard
for(i=0;i<limite;i++)
combinaison_ordi= (rand()%7)+1;
printf("que la partie commence");
while( comparer_nbr_bp(vect_ordi,vect_joueur,ntour == 0)
{
printf(" il vous reste %d coup a jouer ", (10-ntour));
demande_combinaison_joueur= demande_nbr ( *vect_joueur[0],*limite);
lire_combinaison_joueur= lire_nbr ( *vect_joueur[0],*limite);
bien_placer= comparer_nbr_bp ( *vect_ordi[0],*vect_joueur[0],*limite);
mal_placer = comparer_nbr_mp ( *vect_ordi[0],*vect_joueur[0],*limite);
trouve_pas = comparer_nbr_tp ( *vect_ordi[0],*vect_joueur[0],*limite);
ntour ++;
}
if (ntour != 10)
printf("bravo , vous avez gagner");
else
printf(" dommage, perdu");
getchar();
return 0;
}
/* les differents fonctions*/
void initialiser_vecteur ( int *vect_ordi[0],int *limite)
{
int i;
printf(" les nombres choisit par lordinateur");
for ( i=0;i<limite;i++)
{
vect_ordi[i]= (rand()%7+1;
}
return i;
}
void demande_nbr (int *vect_joueur[0],int *limite)
{
int i;
for ( i=0;i<limite;i++)
{
printf("%d",vect_joueur[0]);
}
}
void lire_nbr ( int *vect_joueur[0],int *limite)
{
int i;
for ( i=0;i<limite;i++,vect_joueur++)
{
printf("%d",*vect_joueur);
}
return i;
}
void comparer_nbr_bp ( int *vect_ordi[0],int *vect_joueur[0],int *limite, int *ntour);
{
int i;
int trouve=0;
for ( i=0;i<limite;i++)
{
if(vect_ordi[i] == vect_joueur[i])
{
printf(" la couleur %d est bien correct,"i+1);
trouve++;
}
if(trouve == 4)
return 1;
if (ntour == 10)
return 1;
}
return 0
}
/*void mal_placer = comparer_nbr_mp ( int *vect_ordi[i],int *vect_joueur[i],int *limite)
{
int i,j,k;
if (vect_ordi[i] == 4)
*/
void comparer_nbr_tp ( int *vect_ordi[0],int *vect_joueur[0],int *limite)
{
int i;
int trouve=0;
for ( i=0;i<limite;i++)
{
if(vect_ordi[i] != vect_joueur[i])
{
printf(" la couleur %d ne se trouve pas dans la combinaison ",i+1);
trouve++;
}
}
return trouve
}[\Code]
vous pouvez m'aidez à construire ce programme !!!!
merci
[CODE]#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#define MAX 4
/* prototype fontion*/
/* fin prototype*/
/* fonction principale main*/
int main (void)
{
int vect_ordi[MAX], vect_joueur[MAX], limite= 4;
int ntour=0;
int i;
printf(" ***MASTER MIND** \n");
printf(" essaie de deviner une combinaison de quatre couleurs parmi les sept proposés\n");
printf(" vous avez droit a 10 essais!!!!!\n");
printf(" couleurs proposés\n");
printf(" 1 = rouge\n");
printf(" 2 = bleu\n");
printf(" 3 = vert\n");
printf(" 4 = jaune\n");
printf(" 5 = blanc\n");
printf(" 6 = orange\n");
printf(" 7 = noir\n");
/* combinaison_ordi=*/ initialiser_vecteur ()/*( int *vect_ordi[0],int *limite);*/
//on tire au hasard
for(i=0;i<limite;i++)
combinaison_ordi= (rand()%7)+1;
printf("que la partie commence");
while( comparer_nbr_bp(vect_ordi,vect_joueur,ntour == 0)
{
printf(" il vous reste %d coup a jouer ", (10-ntour));
demande_combinaison_joueur= demande_nbr ( *vect_joueur[0],*limite);
lire_combinaison_joueur= lire_nbr ( *vect_joueur[0],*limite);
bien_placer= comparer_nbr_bp ( *vect_ordi[0],*vect_joueur[0],*limite);
mal_placer = comparer_nbr_mp ( *vect_ordi[0],*vect_joueur[0],*limite);
trouve_pas = comparer_nbr_tp ( *vect_ordi[0],*vect_joueur[0],*limite);
ntour ++;
}
if (ntour != 10)
printf("bravo , vous avez gagner");
else
printf(" dommage, perdu");
getchar();
return 0;
}
/* les differents fonctions*/
void initialiser_vecteur ( int *vect_ordi[0],int *limite)
{
int i;
printf(" les nombres choisit par lordinateur");
for ( i=0;i<limite;i++)
{
vect_ordi[i]= (rand()%7+1;
}
return i;
}
void demande_nbr (int *vect_joueur[0],int *limite)
{
int i;
for ( i=0;i<limite;i++)
{
printf("%d",vect_joueur[0]);
}
}
void lire_nbr ( int *vect_joueur[0],int *limite)
{
int i;
for ( i=0;i<limite;i++,vect_joueur++)
{
printf("%d",*vect_joueur);
}
return i;
}
void comparer_nbr_bp ( int *vect_ordi[0],int *vect_joueur[0],int *limite, int *ntour);
{
int i;
int trouve=0;
for ( i=0;i<limite;i++)
{
if(vect_ordi[i] == vect_joueur[i])
{
printf(" la couleur %d est bien correct,"i+1);
trouve++;
}
if(trouve == 4)
return 1;
if (ntour == 10)
return 1;
}
return 0
}
/*void mal_placer = comparer_nbr_mp ( int *vect_ordi[i],int *vect_joueur[i],int *limite)
{
int i,j,k;
if (vect_ordi[i] == 4)
*/
void comparer_nbr_tp ( int *vect_ordi[0],int *vect_joueur[0],int *limite)
{
int i;
int trouve=0;
for ( i=0;i<limite;i++)
{
if(vect_ordi[i] != vect_joueur[i])
{
printf(" la couleur %d ne se trouve pas dans la combinaison ",i+1);
trouve++;
}
}
return trouve
}[\Code]
mype
Messages postés
2435
Date d'inscription
jeudi 1 novembre 2007
Statut
Membre
Dernière intervention
16 août 2010
436
15 déc. 2007 à 03:44
15 déc. 2007 à 03:44
tu devrais reviser tes pointeurs tu les utilises tres mal...
il faut aussi que tu revoies les appels de fonctions
voici ton programme que j'ai corrigé (si tu comprends pas quelquechose n'hesite pas a demander)
il faut aussi que tu revoies les appels de fonctions
voici ton programme que j'ai corrigé (si tu comprends pas quelquechose n'hesite pas a demander)
#include <stdio.h> #include <time.h> #include <stdlib.h> #define MAX 4 /* les differents fonctions*/ void init() { srand(time(NULL)); } void initialiser_vecteur ( int vect_ordi[MAX],int limite) { int i; printf("l'ordinateur a choisi sa combinaison\n"); for ( i=0;i<limite;i++) { vect_ordi[i]= (rand()%7)+1; } } void demande_nbr (int vect_joueur[MAX],int limite) { int i; for ( i=0;i<limite;i++) { printf("entre ta couleur %d : ",i+1); scanf("%d",&vect_joueur[i]); } } int comparer_nbr_bp ( int vect_ordi[MAX],int vect_joueur[MAX],int limite, int ntour) { int i; int trouve=0; for ( i=0;i<limite;i++) { if(vect_ordi[i] == vect_joueur[i]) { printf("la couleur %d est bien correct\n",i+1); trouve++; } if(trouve == 4) return 1; if (ntour == 10) return 1; } return 0; } void comparer_nbr_tp ( int vect_ordi[MAX],int vect_joueur[MAX],int limite) { int i,j; int trouve=0; for ( i=0;i<limite;i++) { trouve=0; for(j=0;j<limite;j++) { if(vect_ordi[j] != vect_joueur[i]) { trouve++; } if(trouve==4) printf("la couleur %d ne se trouve pas dans la combinaison \n",i+1); } } } /* fonction principale main*/ int main (void) { int vect_ordi[MAX], vect_joueur[MAX]; int limite= 4; int ntour=0; int i; printf(" ***MASTER MIND** \n"); printf(" essaie de deviner une combinaison de quatre couleurs parmi les sept proposes\n"); printf(" vous avez droit a 10 essais!!!!!\n"); printf(" couleurs proposes\n"); printf(" 1 = rouge\n"); printf(" 2 = bleu\n"); printf(" 3 = vert\n"); printf(" 4 = jaune\n"); printf(" 5 = blanc\n"); printf(" 6 = orange\n"); printf(" 7 = noir\n"); init(); //on tire au hasard initialiser_vecteur (vect_ordi,limite); printf("que la partie commence\n"); while( comparer_nbr_bp(vect_ordi,vect_joueur,limite,ntour) == 0) { printf("il vous reste %d coup a jouer \n", (10-ntour)); demande_nbr ( vect_joueur,limite); comparer_nbr_tp ( vect_ordi,vect_joueur,limite); ntour ++; } if (ntour != 10) printf("bravo , vous avez gagner"); else printf(" dommage, perdu"); getchar(); return 0; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
kaddict
Messages postés
219
Date d'inscription
samedi 8 décembre 2007
Statut
Membre
Dernière intervention
3 novembre 2008
14
15 déc. 2007 à 03:57
15 déc. 2007 à 03:57
Héhé!
Attention débutant, je te conseille de bien comprendre tes pointeurs avant que ton prof ne te demande de lui remettre un travail pratique sur comment réaliser des listes doublement chaînées et des arbres ;-p
Sur ce,
Bonne chance en prog! sois persévérant :)
Kaddict
Attention débutant, je te conseille de bien comprendre tes pointeurs avant que ton prof ne te demande de lui remettre un travail pratique sur comment réaliser des listes doublement chaînées et des arbres ;-p
Sur ce,
Bonne chance en prog! sois persévérant :)
Kaddict
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
17 déc. 2007 à 08:46
17 déc. 2007 à 08:46
ton
l'opérateur unaire '*' sert à déreférencé une pointeur, si la variable qui suis est une valeur, ça n'as aucun sens.
donc, revoi les pointeurs doucement, en fesant des tests et exercices de base jusqu'à comprendre coment ils fonctionnent
*vect_ordi[0]a autant de sens que de faire :
int i=3; *i=*i+2;
l'opérateur unaire '*' sert à déreférencé une pointeur, si la variable qui suis est une valeur, ça n'as aucun sens.
donc, revoi les pointeurs doucement, en fesant des tests et exercices de base jusqu'à comprendre coment ils fonctionnent