Bonjour,

On a vu le début d'un programme et il faut le compléter. Le but est d'inverser tous les mots d'un texte (pas les lettres, juste les mots).

Pour ça il faut 2 procédures:
une pour récupérer le premier mot du texte , une autre pour inverser les mots.

Ce que j'ai pour le moment n'a ni queue ni tête, je m'en rend bien compte, est-il possible d'avoir un éclairage?

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
 
#include <iostream.h>
#include <stdio.h>
 
 
void extract_mot(char ch[], int &deb, char mot[])
{ int i=0;
  strcpy(mot," ");
// supprimer caractères '' je crois
  while (ch,[deb] == ' ' && ch[deb] != '\0') deb++;
  //extraire le mot jusqu'au premier blanc
  while (ch,[deb] != ' ' && ch[deb] != '\0') deb++;
     { mot[i]=ch[deb];i++;deb++; }
 
  mot[i]='\0';                }
 
void inverse(char verlan[], int fin)
 { for ( int j=1     // là je voudrais mettre le premier mot à la fin
 }
 
int main()
  {char chaine_a_inv[];
   int esp = 0;
   char mots[];
   gets(a_inverser);
   extract_mot(chaine_a_inv,esp,  //...
   cout << "Nombre de mots de la chaine = " << esp << "\n";
   inverse(chaine_a_inv,esp);
 
 system ("pause");
 return 0;
}
Merci d'avance!