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
|
program ex;
uses wincrt;
var
ch,a:string;
x,y,z,k:integer;
begin
repeat
readln(ch);
until ch<>''
// jusqu'ici tout vas bien tu vérifie la saisie d'une phrase ou un mot
a:=ch; // bon là tu affecte ch a a pourquoi ????
while (pos(' ',a) <> 0 ) do // ici tu ne vérifie qu'un espace perso j'aurais vérifié les deux espaces
delete(a,pos(' ',a),1); // boom ici tu efface tout les blancs
x:= pos(a[1],ch); // donc la tu vérifie que le caractère en a[1] se trouve dans ch ??? pourquoi a[1]
y:= pos(a[length(a)],ch); // donc la tu vérifie que le dernier caractère en a se trouve dans ch ??? pourquoi le dernier de caractère de a
z:= pos(' ',ch); // tu recherche de nouveau l'espace
while (z<x) or (z>y) do // là tu cherche les borne c'est spécial surtout que tu as déjà supprimé le premier espace
delete(ch,z,1); // il est ou lincrément de ta boucle
k:=pos(' ',ch); //ici tu recherche les deux espace et cétait pour moi la meilleur méthode
while k <>0 do
delete(ch,k,1); // il est ou lincrément de ta boucle
writeln(ch);
end. |
Partager