Tri d'un tableau et recherche
Ben42
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour ! J'ai écrit un programme qui permet de trier un tableau d'entier par ordre croissant; et je dois maintenant le compléter pour qu'il recherche un entier donné en argument. Voici ce que j'ai écrit (le script n'est pas en entier, le reste marche parfaitement, c'est vraiment ici que ca me saoule) :
int r;
printf("Entrez l'entier recherché : ");
scanf("%d",&r);
for (i=0 ; i<d ; i++) {
if (tab[i] != r) { //tab est le tableau trié.
printf("L'entier %d n'est pas présent dans le tableau\n",r);
return 0;
}
else {
printf("L'entier %d est présent dans le tableau\n",r);
return 1;
}
Et chaque fois que je l'exécute, il m'écrit "L'entier %d n'est pas présent dans le tableau", mais qd je rentre un entier qui est dans le tableau !!
Pouvez vous m'aider svp ! :D
int r;
printf("Entrez l'entier recherché : ");
scanf("%d",&r);
for (i=0 ; i<d ; i++) {
if (tab[i] != r) { //tab est le tableau trié.
printf("L'entier %d n'est pas présent dans le tableau\n",r);
return 0;
}
else {
printf("L'entier %d est présent dans le tableau\n",r);
return 1;
}
Et chaque fois que je l'exécute, il m'écrit "L'entier %d n'est pas présent dans le tableau", mais qd je rentre un entier qui est dans le tableau !!
Pouvez vous m'aider svp ! :D
A voir également:
- Tri d'un tableau et recherche
- Trier un tableau excel - Guide
- Tableau word - Guide
- Tableau ascii - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Imprimer un tableau excel - Guide
1 réponse
Bonjour,
Algorithmiquement, c'est faux.
for (i=0 ; i<d ; i++) {
if (tab[i] != r) { //tab est le tableau trié.
Dès la 1ere itération, si c'est différent, tu affiches que l'élément n'est pas présent dans le tableau.
Il faut parcourir tout le tableau avant de dire que l'élément est absent du tableau.
Cela donnerait :
Google is your friend
Algorithmiquement, c'est faux.
for (i=0 ; i<d ; i++) {
if (tab[i] != r) { //tab est le tableau trié.
Dès la 1ere itération, si c'est différent, tu affiches que l'élément n'est pas présent dans le tableau.
Il faut parcourir tout le tableau avant de dire que l'élément est absent du tableau.
Cela donnerait :
--
Saisir r
Pour chacun des éléments du tableau
Si élément == r Alors
Afficher "r est présent dans le tableau"
Fin Fonction
Fin Si
Fin Pour
Afficher "r est absent du tableau"
Google is your friend