Programme pascal
kikou300
-
amie -
amie -
Bonjour à tous !!
pouvez vous m'aider à trouver la faute que j'ai commise dans ce programme qui sert a afficher les occurences des voyelles dans une chaine de caractères donnée
le voici :
program occurence_j;
uses wincrt;
var
ch : string;
i : integer;
procedure saisie (ch: string);
begin
repeat
writeln('donnez une chaine de caractères');
readln(ch);
until ch<>'';
end;
function occurence (ch : string):string;
var
occ : string;
begin
for i := 1 to length(ch) do
begin
if (ch[i]='a') or (ch[i]='o') or (ch[i]='u') or (ch[i]='i') or (ch[i]='e') or (ch[i]='y') then
begin
occ := occ + ch[i] + ' ';
end;
end;
occurence := occ;
end;
begin
saisie(ch);
writeln(occurence(ch));
end.
merci pour votre aide :)
pouvez vous m'aider à trouver la faute que j'ai commise dans ce programme qui sert a afficher les occurences des voyelles dans une chaine de caractères donnée
le voici :
program occurence_j;
uses wincrt;
var
ch : string;
i : integer;
procedure saisie (ch: string);
begin
repeat
writeln('donnez une chaine de caractères');
readln(ch);
until ch<>'';
end;
function occurence (ch : string):string;
var
occ : string;
begin
for i := 1 to length(ch) do
begin
if (ch[i]='a') or (ch[i]='o') or (ch[i]='u') or (ch[i]='i') or (ch[i]='e') or (ch[i]='y') then
begin
occ := occ + ch[i] + ' ';
end;
end;
occurence := occ;
end;
begin
saisie(ch);
writeln(occurence(ch));
end.
merci pour votre aide :)
Configuration: Windows XP Firefox 3.0.4
3 réponses
-
bonsoir
ton pgm que tu a posté est juste mais il est besoin de 2 choses:
1:dans la premiere procedure de saisie il faut passer le parametre par variable sinon ta proc ne renvoi rien dans ch
procedure saisie (<gras>ch: string); </gras>
2:dans la fonction occurence t'a pas initialisé au debut la variable occ
occ:=''
avec ces deux remarque ton pgm va fonctionner!!!
cdlt -
l'occurrence des voyelles c le nbre de voyelles dans une chaîne alors occ est un entier occ: int, en plus tu dois initialiser occ à 0 occ:=0 et enfin tu remplace cette ligne:
occ := occ + ch[i] + ' ';
par:
occ := occ + 1;
la fct occurence retourne alors un entier! -
tu dois stocker les voyelles trouvés dans un tableau!
en fait je n'ai aucune idée comment concaténer des chaînes de caractères en pascal alors tu peux utiliser un tableau et puis les afficher caractere apres caractere!
occ := occ + ch[i] + ' '; // c une procedure de concaténation?