[pascal] inverser une chaîne de caractères

Fermé
grad - 3 janv. 2008 à 21:02
 HanOu - 28 janv. 2012 à 16:27
Bonjour,
Comment faire pour inverser une chaîne de caractères dansL'algorithme et En pascal
c'est à dire si chaîne=ABC123 alors chaîne <= 321CBA
sans la méthode tranditionnelle:

for i:=1 to longueur_de_chaîne Do
fot j:=longueur_de_chaîne DownTO 1 Do
chaîne[i]:=chaîne[j];

c'est à dire une fonction directe comme inverse(chaîne) ou quelque chose comme ça

*Autre chose : comment faire pour déterminer la longueur d'une chaîne de carcactères ?
A voir également:

6 réponses

salut grad,
c'est tjrs salhi qui vous répond!
pour la longueur d'une chaîne c'est : n <-- Long(ch) en algo et n:=Length(ch) en pascal
pour l'inverse il n'ya pas de fonction prédéfinit mais tu peux écrire une fonction récursive:

function inverse(ch:string; i:integer):string;
begin
if(i<=length(ch))then
inverse:=inverse(ch,i+1)+ch[i];
end;


et dans le programme principal il faut faire l'appel: chaine_inverse:=inverse(ch,1);


Bonne chance.
6
la condition ne peut jamais être une affectation
0
ce n'est pas une affectation, c'est inferieur ou égale à ^^
0