mimi2316 Nouveau

Inscrit le : 16 Avr 2008 Messages : 3
| Sujet: extraire un mot Mer 16 Avr - 18:17 | |
| bonjour, le sujet: ecrire un algorithme qui permet de compter les occurences du premier mot d'une chaine de caractères. je suis débutante en pascal. j'ai essayé mais ça marche pas:
| Code: | program exo93; uses crt; var ph: string; pmot:string;
function occ_mot(ch:string;var mot:string):integer; var i,j,cpt:integer; m: string; begin i:=1; cpt:=0; j:=1; m:= copy (ch,j,i); if (ord(m[j]))<> 32 then begin if m=mot then begin cpt:=cpt +1; j:=i+1; end else i:= i+1; end else j:=j+1; occ_mot:=cpt; end;
begin writeln ('donner la phrase '); readln(ph); writeln('donner le mot que vous vouler comparer'); readln( pmot); writeln(' le nobre d occurences du mot ',pmot,'est: ',occ_mot(ph,pmot)); readln; end.
|
le probleme est que dans la fonction occ_mot il n'y a extraction que du premier caractère de la chaîne ch (la phrase), que j'essayes de comparer avec le premier caractère de mot (le mot à trouver). donc comment faire pour extraire un mot d'une chaine ? please help me
merci d avance. |
|
Chaker Administrateur


Age : 18 Inscrit le : 17 Jan 2007 Messages : 744
| Sujet: Re: extraire un mot Lun 21 Avr - 19:53 | |
| Salut Je crois que c'est un peu tard mais je vais répondre quand même :
Dans le cas ou tu recherche un mot dans une chaîne qui contient plusieurs mots, cela veux dire que les mots sont séparés d'espaces, donc le premier mot commence du premier caractère et fini avant le premier espace rencontré ou eventuellement la fin de la chaine si elle ne contient qu'un seul mot... Je te laisse méditer sur cette petite expliquation. Si besoin est, j'expliquerai d'avantage.
Bon, @++ |
|
mimi2316 Nouveau

Inscrit le : 16 Avr 2008 Messages : 3
| |