Petite aide en C++
chikhaoui5
Messages postés
266
Date d'inscription
Statut
Membre
Dernière intervention
-
Gokuronkyo Messages postés 53 Date d'inscription Statut Membre Dernière intervention -
Gokuronkyo Messages postés 53 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
svp mais amis est ce que quelqu'un peut m'aider a corriger ce petit programme en c et merci d'avance
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
int choix;
/*FONCTION SAISIE_TAILLE*/
int saisie_taille()
{
int n;
{
printf("''''''''''''''''''''''''''''''''''''''''''''\n");
printf("\n");
printf("PROJET FAIT PAR*****chikhaoui*******\n");
printf("\n");
printf("''''''''''''''''''''''''''''''''''''''''''''\n");
do
{
printf("donner la taille du tableau t1 est t2\t");
scanf("%d",&n);
}
while((n<1)||(n>50));
return (n);
}
/*FONCTION CHARCHEMENT*/
void chargement(int t1[],int n)
int i;
for(i=0;i<n;i++)
{
do
{
printf("'''''''''''''''''''''''''''''''''''''''''''\n");
printf("t[%d]\t",i);
scanf("%d",&t1[i]);
}while (t1[i]<0);
}
}
/*FONCTION AFFICHER*/
void affiche(int t1[],int n)
{
int i;
for(i=0;i<n;i++)
{
printf("%d\t\a",t1[i]);
}
printf("\n");
}
/*FONCTION RECHERCHE*/
void recherche(int t1[],int n)
{
int i,min,x,A,c[50];
x=0;
printf("donner un entier\n");
scanf("%d",&A);
for(i=0;i<n;i++)
{
if (t1[i]>A)
{
printf("%d\t",t1[i]);
c[x]=t1[i];
x++;
}
}
if(x>1)
{
min=c[0];
for(i=1;i<x;i++)
{
if(c[i]<min)
min=c[i];
}
printf("\nle plus petit element superieur a %d et : %d\n",A,min);
}
else
printf("entier n'existe pas\n");
}
/*FONCTION TRANSFERE*/
void transfere(int t1[],int t3[],int n)
{
int i,j,k;
j=0;
k=n-1;
for(i=0;i<n;i++)
{
if(i%2==0)
{
t3[j]=t1[i];
j++;
}
else
{
t3[k]=t1[i];
k--;
}
}
affiche(t3,n);
getch();
}
/*FONCTION SYMETRIQUE*/
int symetrique(int t1[],int n)
{
int i,sym;
sym=1;
i=0;
while((sym==1)&(i<n))
{
if(t1[i]!=t1[n-i-1])
sym=0;
else
i++;
}
if(sym==1)
{
gotoxy(30,15);
printf("t1 est symetrique"); }
else
{
gotoxy(30,15);
printf("t1 n'est symetrique");
}
getch();
return (sym);
}
/*FONCTION DETERMINER*/
int determiner(int t1[],int n)
{
int oc,nb,i,j;
clrscr();
oc=0;
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(t1[i]==t1[j])
{
oc++;
}
}
}
nb=n-oc+1;
printf("le nombre d'element distint est%d\t",nb);
getch();
return (nb);
}
/*FONCTION INSERTION*/
void insertion(int t1[],int n)
{
int i,pos,val,m;
clrscr();
printf("donner la valeur a inserer");
scanf("%d",&val);
do
{
printf("donner la position d'insertion");
scanf("%d",&pos);
}while((pos>n)||(pos<0));
m=n+1;
for(i=m;i>pos;i--)
{
t1[i]=t1[i-1];
}
t1[pos]=val;
affiche(t1,m);
getch();
}
/*FONCTION INVERSE*/
void inverse(int t2[],int n)
{
int i,j,aux;
clrscr();
for (i=0,j=n-1;i<j;i++,j--)
{
aux=t2[i];
t2[i]=t2[j];
t2[j]=aux;
}
affiche(t2,n);
getch();
}
/*FONCTION ROTATION*/
void rotation(int t2[],int n)
{
int i,aux;
clrscr();
aux=t2[n-1];
for(i=n;i>0;i--)
{
t2[i]=t2[i-1];
}
t2[0]=aux;
affiche(t2,n);
getch();
}
/*FONCTION COMPACTER*/
void compacter(int t1[],int n)
{
int i,j,nb,m,x;
clrscr();
x=n;
nb=0;
i=0;
while(i<x)
{
if(t1[i]%2==0)
{
for(j=i;j<n;j++)
{
t1[j]=t1[j+1];
}
nb++;
x--;
i--;}
i++;
}
printf("le nombre d'element supprime est %d\n",nb);
m=n-nb;
if(m==n-1)
{
printf("tableau supprimé");
}
else
{
affiche(t1,m);
}
getch();
}
/*FONCTION RECH_SEQUENTIELLE*/
int rech_seq(int t2[],int n)
{
int c,rech,v;
clrscr();
printf("donner la valeur a rechercher");
scanf("%d",&v);
c=0;
do
{
c++;
}
while((t2[c]!=v)&&(c!=n));
if(t2[c]==v)
{
rech=1;
}
else
{
rech=0;
}
if(rech==1)
{
printf("element existe");
}
else
{
printf("element n'existe pas");
}
getch();
return (rech);
}
/*FONCTION TRI_BULLE*/
void tri_bulle(int t2[],int n)
{
int permut,i,aux;
clrscr();
do
{
permut=0;
for(i=0;i<n-1;i++)
{
if(t2[i]>t2[i+1])
{
aux=t2[i];
t2[i]=t2[i+1];
t2[i+1]=aux;
permut=1;
}
}
} while(permut!=0);
affiche(t2,n);
getch();
}
/*FONCTION RECH_DICHOTOMIQUE*/
int rech_dich(int t2[],int n)
{
int g,d,i,rech_di,v;
clrscr();
tri_bulle(t2,n);
printf("donner la valeur a rechercher");
scanf("%d",&v);
g=0;
d=n-1;
do
{
i=(g+d)/2;
if(v<t2[i])
{
d=i-1;
}
else
{
g=i+1;
}
}
while((v!=t2[i])&&(g>d));
if (v==t2[i])
rech_di=1;
else
rech_di=0;
if(rech_di==1)
{
printf("element existe");
}
else
{
printf("element n'existe pas");
}
getch();
return (rech_di);
}
/*FONCTION TRI_SELECTION*/
void tri_selection(int t2[],int n)
{
int i,j,indmin,aux;
clrscr();
for(i=0;i<n-1;i++)
{
indmin=i;
for(j=i+1;j<n;j++)
{
if(t2[j]<t2[indmin])
{
indmin=j;
}
}
aux=t2[i];
t2[i]=t2[indmin];
t2[indmin]=aux;
}
affiche(t2,n);
getch();
}
/*FONCTION TRI_INSERTION*/
void tri_insertion(int t2[],int n)
{
int aux,i,j,pos;
clrscr();
for(i=1;i<=n;i++)
{
pos=i-1;
while((pos>=0)&&(t2[pos]>t2[i]))
{
pos--;
}
pos=pos+1;
aux=t2[i];
for(j=i-1;j>=pos;j--)
{
t2[j+1]=t2[j];
}
t2[pos]=aux;
}
affiche(t2,n);
getch();
}
int menu_principale()
{
int choix;
clrscr();
gotoxy(10,5);
printf("MENU GENERALE");
gotoxy(15,6);
printf("1***Recherche\n");
gotoxy(15,7);
printf("2***transfére\n");
gotoxy(15,8);
printf("3***Symetrique\n");
gotoxy(15,9);
printf("4***Determiner\n");
gotoxy(15,10);
printf("5***Insertion");
gotoxy(15,11);
printf("6***invertion\n");
gotoxy(15,12);
printf("7***Rotation\n");
gotoxy(15,13);
printf("8***Compacter\n");
gotoxy(15,14);
printf("9**Recherche");
gotoxy(20,15);
printf("1****Recherche_sequentielle\n");
gotoxy(20,16);
printf("2****Recherche_dichotomique\n");
gotoxy(15,17);
printf("10**TRI\n");
gotoxy(20,18);
printf("1**Tri_insertion\n");
gotoxy(20,19);
printf("2***Tri_bulles\n");
gotoxy(20,20);
printf("3***Tri_selection\n");
gotoxy(20,21);
printf("11**Quitter\n");
gotoxy(30,22);
printf("donner votre choix SVP :");
scanf("%d",&choix);
clrscr();
return (choix);
}
int sous_menu1()
{ int choix1;
gotoxy(20,12);
printf("1****Recherche_sequentielle\n");
gotoxy(20,13);
printf("2****Recherche_dichotomique\n");
gotoxy(20,14);
printf("3***MENU_PRINCIPALE*******\n");
gotoxy(38,15);
printf("donner votre choix SVP :");
scanf("%d",&choix1);
return(choix1) ;
}
void sous_menu2()
{
printf("1****Tri_par_selection\n");
gotoxy(20,11);
printf("2****Tri_par_bulles\n");
gotoxy(20,12);
printf("3****Tri_par_insertion\n");
gotoxy(20,13);
printf("4*****MENU_PRINCIPALE*******\n");
gotoxy(35,14);
printf("donner votre choix SVP :");
}
int quitter()
{
gotoxy(18,13);
printf("ce programme est réalise par:\n");
gotoxy(18,14);
printf("\n");
printf("\n");
printf("*************************ALA BEN RAYANA_TD2***********************");
getch();
_exit(0);
return 0;
}
/*PROGRAMME_PRINCIPALE*/
void main()
{
int t1[50],t2[50],t3[50],n,k,rech1,rech2,v,s,choix,choix1,choix2,q;
n=saisie_taille();
printf("chargement du tableau t1:\n");
chargement(t1,n);
affiche(t1,n);
printf("chargement du tableau t2:\n");
chargement(t2,n);
affiche(t2,n);
getch();
clrscr();
do
{
choix=menu_principale();
switch(choix)
{
case 1:recherche(t1,n); getch();break;
case 2:transfere(t1,t3,n);getch(); break;
case 3:s=symetrique(t1,n); break;
case 4:k=determiner(t1,n); break;
case 5:insertion(t1,n); break;
case 6:inverse(t2,n); break;
case 7:rotation(t2,n); break;
case 8:compacter(t1,n); break;
case 9:
do
{
choix1=sous_menu1();
switch(choix1)
{
case 1:rech1=rech_seq(t1,n);getch(); break;
case 2:rech2=rech_dich(t1,n);getch(); break;
case 3:choix=menu_principale();}
}while(choix1!=3);break;
case 10:
do
{
sous_menu2();scanf("%d",&choix2);
switch(choix2)
{
case 1:tri_selection(t2,n);getch(); break;
case 2:tri_bulle(t2,n);getch(); break;
case 3:tri_insertion(t2,n);getch(); break;
case 4:choix=menu_principale();
}
}
while(choix2!=4);
break;
case 11:quitter();getch(); break;
}
}while(choix!=11);
}
svp mais amis est ce que quelqu'un peut m'aider a corriger ce petit programme en c et merci d'avance
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
int choix;
/*FONCTION SAISIE_TAILLE*/
int saisie_taille()
{
int n;
{
printf("''''''''''''''''''''''''''''''''''''''''''''\n");
printf("\n");
printf("PROJET FAIT PAR*****chikhaoui*******\n");
printf("\n");
printf("''''''''''''''''''''''''''''''''''''''''''''\n");
do
{
printf("donner la taille du tableau t1 est t2\t");
scanf("%d",&n);
}
while((n<1)||(n>50));
return (n);
}
/*FONCTION CHARCHEMENT*/
void chargement(int t1[],int n)
int i;
for(i=0;i<n;i++)
{
do
{
printf("'''''''''''''''''''''''''''''''''''''''''''\n");
printf("t[%d]\t",i);
scanf("%d",&t1[i]);
}while (t1[i]<0);
}
}
/*FONCTION AFFICHER*/
void affiche(int t1[],int n)
{
int i;
for(i=0;i<n;i++)
{
printf("%d\t\a",t1[i]);
}
printf("\n");
}
/*FONCTION RECHERCHE*/
void recherche(int t1[],int n)
{
int i,min,x,A,c[50];
x=0;
printf("donner un entier\n");
scanf("%d",&A);
for(i=0;i<n;i++)
{
if (t1[i]>A)
{
printf("%d\t",t1[i]);
c[x]=t1[i];
x++;
}
}
if(x>1)
{
min=c[0];
for(i=1;i<x;i++)
{
if(c[i]<min)
min=c[i];
}
printf("\nle plus petit element superieur a %d et : %d\n",A,min);
}
else
printf("entier n'existe pas\n");
}
/*FONCTION TRANSFERE*/
void transfere(int t1[],int t3[],int n)
{
int i,j,k;
j=0;
k=n-1;
for(i=0;i<n;i++)
{
if(i%2==0)
{
t3[j]=t1[i];
j++;
}
else
{
t3[k]=t1[i];
k--;
}
}
affiche(t3,n);
getch();
}
/*FONCTION SYMETRIQUE*/
int symetrique(int t1[],int n)
{
int i,sym;
sym=1;
i=0;
while((sym==1)&(i<n))
{
if(t1[i]!=t1[n-i-1])
sym=0;
else
i++;
}
if(sym==1)
{
gotoxy(30,15);
printf("t1 est symetrique"); }
else
{
gotoxy(30,15);
printf("t1 n'est symetrique");
}
getch();
return (sym);
}
/*FONCTION DETERMINER*/
int determiner(int t1[],int n)
{
int oc,nb,i,j;
clrscr();
oc=0;
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(t1[i]==t1[j])
{
oc++;
}
}
}
nb=n-oc+1;
printf("le nombre d'element distint est%d\t",nb);
getch();
return (nb);
}
/*FONCTION INSERTION*/
void insertion(int t1[],int n)
{
int i,pos,val,m;
clrscr();
printf("donner la valeur a inserer");
scanf("%d",&val);
do
{
printf("donner la position d'insertion");
scanf("%d",&pos);
}while((pos>n)||(pos<0));
m=n+1;
for(i=m;i>pos;i--)
{
t1[i]=t1[i-1];
}
t1[pos]=val;
affiche(t1,m);
getch();
}
/*FONCTION INVERSE*/
void inverse(int t2[],int n)
{
int i,j,aux;
clrscr();
for (i=0,j=n-1;i<j;i++,j--)
{
aux=t2[i];
t2[i]=t2[j];
t2[j]=aux;
}
affiche(t2,n);
getch();
}
/*FONCTION ROTATION*/
void rotation(int t2[],int n)
{
int i,aux;
clrscr();
aux=t2[n-1];
for(i=n;i>0;i--)
{
t2[i]=t2[i-1];
}
t2[0]=aux;
affiche(t2,n);
getch();
}
/*FONCTION COMPACTER*/
void compacter(int t1[],int n)
{
int i,j,nb,m,x;
clrscr();
x=n;
nb=0;
i=0;
while(i<x)
{
if(t1[i]%2==0)
{
for(j=i;j<n;j++)
{
t1[j]=t1[j+1];
}
nb++;
x--;
i--;}
i++;
}
printf("le nombre d'element supprime est %d\n",nb);
m=n-nb;
if(m==n-1)
{
printf("tableau supprimé");
}
else
{
affiche(t1,m);
}
getch();
}
/*FONCTION RECH_SEQUENTIELLE*/
int rech_seq(int t2[],int n)
{
int c,rech,v;
clrscr();
printf("donner la valeur a rechercher");
scanf("%d",&v);
c=0;
do
{
c++;
}
while((t2[c]!=v)&&(c!=n));
if(t2[c]==v)
{
rech=1;
}
else
{
rech=0;
}
if(rech==1)
{
printf("element existe");
}
else
{
printf("element n'existe pas");
}
getch();
return (rech);
}
/*FONCTION TRI_BULLE*/
void tri_bulle(int t2[],int n)
{
int permut,i,aux;
clrscr();
do
{
permut=0;
for(i=0;i<n-1;i++)
{
if(t2[i]>t2[i+1])
{
aux=t2[i];
t2[i]=t2[i+1];
t2[i+1]=aux;
permut=1;
}
}
} while(permut!=0);
affiche(t2,n);
getch();
}
/*FONCTION RECH_DICHOTOMIQUE*/
int rech_dich(int t2[],int n)
{
int g,d,i,rech_di,v;
clrscr();
tri_bulle(t2,n);
printf("donner la valeur a rechercher");
scanf("%d",&v);
g=0;
d=n-1;
do
{
i=(g+d)/2;
if(v<t2[i])
{
d=i-1;
}
else
{
g=i+1;
}
}
while((v!=t2[i])&&(g>d));
if (v==t2[i])
rech_di=1;
else
rech_di=0;
if(rech_di==1)
{
printf("element existe");
}
else
{
printf("element n'existe pas");
}
getch();
return (rech_di);
}
/*FONCTION TRI_SELECTION*/
void tri_selection(int t2[],int n)
{
int i,j,indmin,aux;
clrscr();
for(i=0;i<n-1;i++)
{
indmin=i;
for(j=i+1;j<n;j++)
{
if(t2[j]<t2[indmin])
{
indmin=j;
}
}
aux=t2[i];
t2[i]=t2[indmin];
t2[indmin]=aux;
}
affiche(t2,n);
getch();
}
/*FONCTION TRI_INSERTION*/
void tri_insertion(int t2[],int n)
{
int aux,i,j,pos;
clrscr();
for(i=1;i<=n;i++)
{
pos=i-1;
while((pos>=0)&&(t2[pos]>t2[i]))
{
pos--;
}
pos=pos+1;
aux=t2[i];
for(j=i-1;j>=pos;j--)
{
t2[j+1]=t2[j];
}
t2[pos]=aux;
}
affiche(t2,n);
getch();
}
int menu_principale()
{
int choix;
clrscr();
gotoxy(10,5);
printf("MENU GENERALE");
gotoxy(15,6);
printf("1***Recherche\n");
gotoxy(15,7);
printf("2***transfére\n");
gotoxy(15,8);
printf("3***Symetrique\n");
gotoxy(15,9);
printf("4***Determiner\n");
gotoxy(15,10);
printf("5***Insertion");
gotoxy(15,11);
printf("6***invertion\n");
gotoxy(15,12);
printf("7***Rotation\n");
gotoxy(15,13);
printf("8***Compacter\n");
gotoxy(15,14);
printf("9**Recherche");
gotoxy(20,15);
printf("1****Recherche_sequentielle\n");
gotoxy(20,16);
printf("2****Recherche_dichotomique\n");
gotoxy(15,17);
printf("10**TRI\n");
gotoxy(20,18);
printf("1**Tri_insertion\n");
gotoxy(20,19);
printf("2***Tri_bulles\n");
gotoxy(20,20);
printf("3***Tri_selection\n");
gotoxy(20,21);
printf("11**Quitter\n");
gotoxy(30,22);
printf("donner votre choix SVP :");
scanf("%d",&choix);
clrscr();
return (choix);
}
int sous_menu1()
{ int choix1;
gotoxy(20,12);
printf("1****Recherche_sequentielle\n");
gotoxy(20,13);
printf("2****Recherche_dichotomique\n");
gotoxy(20,14);
printf("3***MENU_PRINCIPALE*******\n");
gotoxy(38,15);
printf("donner votre choix SVP :");
scanf("%d",&choix1);
return(choix1) ;
}
void sous_menu2()
{
printf("1****Tri_par_selection\n");
gotoxy(20,11);
printf("2****Tri_par_bulles\n");
gotoxy(20,12);
printf("3****Tri_par_insertion\n");
gotoxy(20,13);
printf("4*****MENU_PRINCIPALE*******\n");
gotoxy(35,14);
printf("donner votre choix SVP :");
}
int quitter()
{
gotoxy(18,13);
printf("ce programme est réalise par:\n");
gotoxy(18,14);
printf("\n");
printf("\n");
printf("*************************ALA BEN RAYANA_TD2***********************");
getch();
_exit(0);
return 0;
}
/*PROGRAMME_PRINCIPALE*/
void main()
{
int t1[50],t2[50],t3[50],n,k,rech1,rech2,v,s,choix,choix1,choix2,q;
n=saisie_taille();
printf("chargement du tableau t1:\n");
chargement(t1,n);
affiche(t1,n);
printf("chargement du tableau t2:\n");
chargement(t2,n);
affiche(t2,n);
getch();
clrscr();
do
{
choix=menu_principale();
switch(choix)
{
case 1:recherche(t1,n); getch();break;
case 2:transfere(t1,t3,n);getch(); break;
case 3:s=symetrique(t1,n); break;
case 4:k=determiner(t1,n); break;
case 5:insertion(t1,n); break;
case 6:inverse(t2,n); break;
case 7:rotation(t2,n); break;
case 8:compacter(t1,n); break;
case 9:
do
{
choix1=sous_menu1();
switch(choix1)
{
case 1:rech1=rech_seq(t1,n);getch(); break;
case 2:rech2=rech_dich(t1,n);getch(); break;
case 3:choix=menu_principale();}
}while(choix1!=3);break;
case 10:
do
{
sous_menu2();scanf("%d",&choix2);
switch(choix2)
{
case 1:tri_selection(t2,n);getch(); break;
case 2:tri_bulle(t2,n);getch(); break;
case 3:tri_insertion(t2,n);getch(); break;
case 4:choix=menu_principale();
}
}
while(choix2!=4);
break;
case 11:quitter();getch(); break;
}
}while(choix!=11);
}
A voir également:
- Petite aide en C++
- Petite amie virtuelle en français gratuit - Accueil - Intelligence artificielle
- Petite croix snap ✓ - Forum Snapchat
- Petite cle en haut a droite samsung - Forum Samsung
- Apparition d'une clé d'entretien sur écran samsung s5 > sm-g800F ✓ - Forum Samsung
- Petite majuscule word ✓ - Forum Word
6 réponses
quand je fait la compilation il ya ke 2 fautes que j'arrive pas a les resoudre
et svp c tro facile pour vous pck vous ete plus expert ke moi
et svp c tro facile pour vous pck vous ete plus expert ke moi
Quelles sont elles ces erreurs?!! Comment veux tu qu'on trouve quoique ce soit si on sait pas ce qu'on cherche!!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai parcouru rapidement, même si tu passe la compilation, ton programme ne fonctionnera pas :
Exemple:
/*FONCTION SAISIE_TAILLE*/
int saisie_taille()
{
int n;
{
Cette fonction doit renvoyer une variable, or tu ne fais que déclarer une variable locale, que tu rappel là où elle n'existe plus.
Sans aller plus loin, je crois que tu devrais reprendre ton algorithme et le suivre pas à pas.
Bon Courage :D
Exemple:
/*FONCTION SAISIE_TAILLE*/
int saisie_taille()
{
int n;
{
Cette fonction doit renvoyer une variable, or tu ne fais que déclarer une variable locale, que tu rappel là où elle n'existe plus.
Sans aller plus loin, je crois que tu devrais reprendre ton algorithme et le suivre pas à pas.
Bon Courage :D
Le titre est trompeur, ce n'est ni une 'petite' aide, ni du C++.
Avec plus de 500 lignes de code non indenté, tu décourages le plus courageux des bénévoles.
En plus tu ne dis même pas ce qui ne fonctionne pas! Pas une piste pour traquer l'erreur plus vite!
Désolé et je te souhaite de trouver quand même un débuggeur.