Aller au contenu

Je n arrive pas a resoudre cet exercice


NiTrOuS

Messages recommandés

Voici l ennoncé:

"Afficher un vecteur comprenant les 26 lettres de l alphabet dans l ordre.

Le programme demande a l utilisateur d entrer une à une les 26 lettres en vrac.

Chaque lettre entrée vient se positionner correctement sous la lettre correspondante du vecteur de lettres.

Chaque lettre ne peut etre traitée qu une seule fois (stocker les entrées dans un vecteur supplémentaire pour verification)"

Voici ce que j ai fait mais il y a encore des erreurs ...

#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
int v_alphab[26],i=0,alpha=97,j=0,err=0,exit=0,away=0,pos;
char ltrtmp,v_rep[100],v_userok[27]={0};
for(i=0;i<26;i++)
{
v_alphab[i]=alpha;
alpha=alpha+1;
}
do
{
 printf("\nEntrez une lettrez; ? pour quitter: ");
 scanf(" %c",&ltrtmp);
 do
 {
if(ltrtmp==v_rep[i]&&exit==0)
 {
printf("Pas de chance la lettre a deja ete entrée\n");
exit=1;
 }
 else if(ltrtmp=='?'&&exit==0)
 {
printf("Le programme va prendre fin\n");
away=1;
 }
 else
 {
printf("Super, ajout de la lettre au vecteur\n");
v_rep[err]=ltrtmp;
err++;
exit=1;
 }
 j++;
}
while(exit==0&&away==0&&j<err);
j=0;
if(away==0)
{
 for(j=0;j<=err;j++)
 {
ltrtmp=v_rep[j];
pos=ltrtmp-97;
v_userok[pos]=ltrtmp;
 }
 for(i=0;i<26;i++)
 {
printf("%c ",v_alphab[i]);
 }
 printf("\n");
 for(i=0;i<26;i++)
 {
 printf("%c ",v_userok[i]);
 }
}
else
printf("Au revoir");
}
while(away==0&&err<26);
if(err==26)
printf("Tu as gagné bravo\n");
}

Lien vers le commentaire
Partager sur d’autres sites

Il y a sans doute un petit probleme au niveau des boucles...

Je te conseille de faire des fonctions pour clarifier un peu ton code :

- une fonction "VerifiePresenceDansTableau(...)" pour savoir si la lettre entree existe deja dans le tableau

- une fonction "TriTableau(..)" pour trier ton tableau une fois que l'utilisateur a saisi toutes les lettres.

Et eventuellement une fonction "AfficherTableau" pour eviter de repeter ton code.

Tu verras, tu en sortiras grandi :keskidit::eeek2:

Lien vers le commentaire
Partager sur d’autres sites

  • 4 semaines après...

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...