Bonjour,

merci pour votre aide....

voici la requête
Entrer un mot de plus de 10 caractères : extraordinaire
Lettre à rechercher : a
Résultat : extrAordinAire
la lettre a apparaît aux positions 5 et 11.

il me reste a intégrer cette partie a la saisie d’écran qui est terminer.

Le problème lorsque je mets un indice a mon tableau le résultat ne s'affiche pas de la même manière
que si je mets mon indice direct.

deuxième problème lorsque j’enlève la ligne cout << str << ' ' << pos[i] << '\n'; je n'est plus les majuscule que remplacer

voici mon code;

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
int main ()
{  string str = "extraordinaire";
 
  string lettre = "i";
  string var = "";
 
  int pos[20];
 
  for (int i=1;i < 20;i++)
   {
       size_t trouver = str.find(lettre);
       if (trouver!= string::npos)
          {var=putchar(toupper(str[trouver]));
           str.replace(str.find(lettre),lettre.length(),var);
           pos[i]= ("%d",trouver+1);
 
           cout << str << ' ' << pos[i] << '\n';
          }
    }
 cout << str,"%s";
 cout << "                                                                             ";
 cout << "La lettre ("<< lettre <<") apparait a la position: "<<(pos[1]);
 int ind2=1;
 int nbr;
 for (int ind=0;ind < 21;++ind)
  {if (pos[ind] <0)
        { cout<<" et "<<pos[ind];
        };
  }
  cout << ".";
  cout << "              return 0;
}
lorsque je mets mon ind à pos[ind] :
Nom : exercice ind.PNG
Affichages : 469
Taille : 3,1 Ko
lorsque je mets 2 direct à pos[2] :
Nom : exercice 3.PNG
Affichages : 461
Taille : 4,6 Ko

résultat attendu
Nom : exercice3 att.PNG
Affichages : 469
Taille : 2,6 Ko";