Programme pascal

Fermé
kikou300 - 25 nov. 2008 à 20:00
 amie - 25 nov. 2008 à 23:24
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 :)
A voir également:

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
1
samar83 Messages postés 67 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 12 novembre 2009 2
25 nov. 2008 à 20:15
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!
0
Merci Samar83 pour ta réponse et je te comprends parfaitement , mais le prof a précisé qu'il ne voulait pas afficher le nombre d'occurences mais les occurences elles meme ce qui veut dire les caractères eux meme , j'aurais aimé faire le programme comme tu la proposé moi aussi lol .
0
samar83 Messages postés 67 Date d'inscription vendredi 26 octobre 2007 Statut Membre Dernière intervention 12 novembre 2009 2
25 nov. 2008 à 20:23
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?
0
oui c supposé etre ça si je n'ai pas commis de fautes ^^ je vais essayer le tableau comme tu as dit , merci encore
0
kikou300 > kikou300
25 nov. 2008 à 20:59
ça marche tjrs pas :( je pense pas que le tableau est la meilleure solution
0