Dev c++

spamware Messages postés 31 Date d'inscription   Statut Membre Dernière intervention   -  
 lee -
salut ttle monde j'utilise le dev c++ pour programmer en c mais choix=getch(); switch(choix)...... m'affiche comme si c'etait 1 erreur alors comment faire????
A voir également:

13 réponses

carkiasis Messages postés 67 Date d'inscription   Statut Membre Dernière intervention   28
 
Mets-nous ton bout de code avec le getch() et egalement l'erreur exacte qu'il te met. Ca sera deja plus facile pour t'aider...

Verifie, on ne sait jamais, si tu a inclus le header ou se trouve cette fonction...
0
spamware
 
{int choix;
printf ("tapez 1 pour effectuer le tp2 \n");
printf ("tapez 2 pour effectuer le tp1 \n");
printf ("tapez 3 pour effectuer le tp3 \n");
printf ("tapez 4 pour effectuer le tp4 \n");
printf ("tapez 5 pour sortir \n");
printf (" Donner votre choix ");
scanf ("%s\n",&choix);
choix=getch();
switch(choix)
{
case'1':
tp1();
case'2':
tp2();
case'3':
tp3();
case'4':
tp4();

}
}
et l'erreur : `getch' undeclared (first use this function)
(Each undeclared identifier is reported only once for each function it appears in.) ps c %d pas %s
0
carkiasis Messages postés 67 Date d'inscription   Statut Membre Dernière intervention   28
 
Il ne reconnait pas ta fonction getch(). C'est peut etre que tu n'inclus pas le header qu'il faut...

Ou alors le probleme vient peut etre de ton OS, car je crois savoir que getch() n'est valable que sur Windows et pas sur Linux (à verifier...).

Voila, a+
0
spamware Messages postés 31 Date d'inscription   Statut Membre Dernière intervention   3
 
re c koiun header? et j'ai un windows xp alors comment regler le pb?????? merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
carkiasis Messages postés 67 Date d'inscription   Statut Membre Dernière intervention   28
 
Un header c'est un fichier en .h (comme <stdio.h>). Par exemple, si tu veut utiliser strcmp (fonction qui compare deux string), tu doit inclure <string.h> sinon il ne va pas reconnaitre ta fonction...

C'est peut etre ton probleme.
Et donc je te laisse regarder sur internet pour voir dans quel header il est contenu, ou si quelqu'un le sait, qu'il ne se gene pas !!!

a++
0
mouafo Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
c'est justement cela son problèeme
0
spamware Messages postés 31 Date d'inscription   Statut Membre Dernière intervention   3
 
voici mon code si vous povez le corriger ecris en c et compiler en dev c++ merci
#include <stdio.h>
#define N 30
void tp1 ();
void tp2 ();
void tp3 ();
void tp4 ();
int choisir ();
int index (char s);
char sommet [30];
char l2[30];
int l1[N];
int M[N][N];
int r,nb,nbr;
int choix;
char s;
int main ()
{

//******************************************************************************
int r, nb, nbr = 0;


choisir ();
do
{

if (choix==1) tp1 ();
if (choix==2) tp2 ();
if (choix==3) tp3 ();
//if (choix==4) tp4 ();
}
while (choix==5);


}
//******************************************************************************
int choisir ()
{int choix;
printf ("tapez 1 pour effectuer le tp2 \n");
printf ("tapez 2 pour effectuer le tp1 \n");
printf ("tapez 3 pour effectuer le tp3 \n");
printf ("tapez 4 pour effectuer le tp4 \n");
printf (" Donner votre choix ");
scanf ("%s\n",&choix);

return (choix);
}
//******************************************************************************
int index (char s)
{

int r=0;
int p;
p=1;

while ((sommet[p]!=s) && (sommet[p]!='*'))
{
p=p+1;
}
if (sommet[p]==s)
{
return(p);
}
else
{
r=r+1;
sommet[r]=s;
return (r);
}
}

//******************************************************************************
void tp2 ()
{ tp1();
int i,j;
char som1,som2;
int nb;
int nbr;
char sommet[30];
int M[30][30];
printf ("donner le nombre de sommets : ");
scanf ("%d\n",&nb);
printf ("donner le nombre d'arcs : ");
scanf ("%d\n",&nbr);
//initialisation du tableau sommet
for (i=1;i<=nb;i++)
{
sommet[i]= ' ' ;
}
//initialisation de la matrice M
for (i=1;i<=nb;i++)
for (j=1;j<=nb;j++)
M[i][j]=0;
//parcours en profondeur du graphe
for (i=1;i<=nbr;i++)
{
int x,y;
printf ("donner l'extremite initiale de l'arc \n: ");
scanf ("%c",&som1);
printf ("donner l'extremite terminale de l'arc \n: ");
scanf ("%c",&som2);
//x donne l'indice de som1 dans le tableau sommet
x=index(som1);
// meme chose pour y
y=index(som2);
M[x][y]=1;
}
//affichage de la matrice
for (i=1;i<=nb;i++)
{
for (j=1;j<=nb;j++)
printf ("%7d",M[i][j]);
printf ("\n");
}
tp1 ();
}
//******************************************************************************
void tp1 ()
{
int i,j,k,d,nb,M[30][30],l1[30];
char sommet[30],l2[30];
k=0;
//la lecture de la matrice sommet-sommet
for(i=1;i<=nb;i++)
{
for(j=1;j<=nb;j++)
{
scanf( "%d",M[i][j]);
}
}
//la lecture du tableau des sommets
for (i=1;i<=nb;i++)
{
scanf ("%c",sommet[i]);
}
//initialisation de la liste l2
for (i=1;i<=N;i++)
{
l2[i]=' ';
}
//creation de la liste l2
for (i=1;i<=nb;i++)
{
for (j=1;j<=nb;j++)
{
if( M[i][j]==1)
{
printf (" le successeur du sommet : ");
printf ("%c",sommet[i]);
printf (" est : ");
printf ("%c\n",sommet[j]);
k=k+1;
l2[k]=sommet[j];
}
}
}
d=i;
for (j=1;j<=nb;i++)
{
if (M[d][j]!=1)
{
k=k+1;
l2[k]='*';
}
}

//affichage de la liste l2
for(i=1;i<=N;i++)
{
while (l2[i]!=' ' )
{
printf("%c",l2[i]);
printf (" ");
}
}
//initialisation de la liste l1
for(i=1;i<N;i++)
{
l1[i]=0;
}
//creation de la liste l1
i=1;
j=1;
k=0;
a:if(M[i][j]==1)
{
k=k+1;
l1[k]=k;
j=j+1;
while(j<=nb)
{
b:if(M[i][j]==1)
{
k=k+1;
j=j+1;
goto b;
}
else
{
j=j+1;
goto b;
}
}
i=i+1;
j=1;
goto a;
}
else
{
j=j+1;
goto a;
}
int p;
p=k;
for (i=1;i<=N;i++)
{
if(l2[i]=='*')
{
l1[p]=p;
}
}
//affichage de la liste l1
for(i=1;i<=N;i++)
{
while (l1[i]!=0)
{
printf("%d",l1[i]);
printf (" ");
}
}

}


//******************************************************************************
void tp3 ()
{
int i,j,nb,M[30][30];
for (i=1;i<=nb;i++)
{
for (j=1;j<=nb;j++)
{
if ((M[i][j]==1)&&(i!=j))
{
if ((M[j][i]==1)&&(i!=j))
{
printf (" le graphe est symétrique ");
printf ("\n");
}
else printf (" le graphe est antisymetrique ");
}
if ((M[i][j]!=1) && (M[j][i]!=1))
{
printf (" le graphe est complet ");
printf ("\n");
}
else printf("le graphe n'est pas complet");
}
}

}

}
return (0);
}
0
mouafo Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
mon frère ceci me depasse je n'arrive pas crois-moi
0
spamware Messages postés 31 Date d'inscription   Statut Membre Dernière intervention   3
 
ok c pas grave ( ta soeur ;) )
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
en retirant les 3 dernieres lignes, chez moi ça compil trs bien
0
spamware Messages postés 31 Date d'inscription   Statut Membre Dernière intervention   3
 
je parle pas de ca , essaye de tapez n'importe quel num et tu va voir
rien ne se passe c ca
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
ba oui, tel que c'est ecri c'est normal !
la fonction choisir renvoie un nombre qui n'est pas récupérer, tu declare choix comme variable global, puis dans choisir comme variable local, donc elle n'est pas modifier!
si tu modifie pas la variable choix, c'est normal que le code comprenne pas !
0
lee
 
ça me convient!!!!
0