J'ai écrit un programme qui efface les espaces supplémentaires. Il s'exécute mais il ne fonctionne pas bien.
Voilà le programme :
Quand je le teste, par exemple je donne ch=a (plusieurs espaces) b.
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 program espace_cleaner ; uses wincrt ; var ch:string ; procedure saisie (var ch :string ); begin writeln('donner une chaine de carractéres '); readln (ch); end; procedure espacecleaner (var ch:string ); var i:integer; begin for i:= 1 to length(ch) do begin if (ch[i]=' ') and (ch[i+1]=' ') then delete(ch,i,1); end; end; procedure affichage (ch:string ); begin writeln('ch= ',ch); end; begin saisie(ch); espacecleaner(ch); affichage(ch); end.
Il m'affiche ch= a (plusieurs espaces mais moins qu'avant) b
J'espère que vous m'aiderez à corriger la faute et merci d'avance ^^
Partager