A voir également:
- Dev c++
- Dev c++ - Télécharger - Langages
- Massgrave dev - Accueil - Windows
- Dev home. - Télécharger - Développement
- Dev pascal - Télécharger - Édition & Programmation
- Dev error 426 - Forum jeux en ligne
13 réponses
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...
Verifie, on ne sait jamais, si tu a inclus le header ou se trouve cette fonction...
{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
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
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+
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+
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
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++
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++
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);
}
#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);
}