Bonjour !
Voilà, j'ai un petit problème : je viens de commencer l'algo en Pascal avec la fac, et en ce moment on voit les chaînes de caractères.
Le bol, c'est que je suis à l'aise donc je ne vous demande pas de rédiger l'exo pour moiPar contre, le prof nous a donné une question bonus, et ça ne me poserait pas non plus problème si au moins je pouvais comprendre la question
![]()
Voilà l'énoncé : "Ecrire un programme qui demande de saisir une chaîne, puis qui indique le nombre de voyelles et de consonnes contenues dans la chaîne".
Alors là je me dis, simple, voilà le code (tout à fait fonctionnel) :
Seulement, la question bonus est :"Modifier le programme afin qu'il indique également le nombre de caractères qui ne sont pas des lettres".
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 program voy_cons; var mot : string; i, long, compteurVoy, compteurCons : integer; begin write('Entrez un mot :'); readln(mot); long := length(mot); i := 1; compteurVoy := 0; compteurCons := 0; while (i <= long) do begin case mot[i] of 'a','e','i','o','u','y' : compteurVoy := compteurVoy + 1; else compteurCons := compteurCons + 1 end; i := i + 1 end; writeln('Il y a ',compteurVoy,' voyelle(s) dans votre mot et ',compteurCons,' consonne(s).') end.
Alors là je sais même pas par où commencer, j'ai essayé un truc du genre :
if ((mot[i] mod 2) = 0) or ((mot[i] mod 2) = 1) then compteurNonLettres := compteurNonLettres + 1;
Je me disais que si on pouvait diviser le caractère au rang i c'est que c'était un nombre. Seulement, le compilateur plantait pour faute de syntaxe. Bah oui, tu m'étonnes, je me doute bien que j'ai pas le droit, c'était juste pour essayer
Du coup, je ne sais pas comment résoudre le problème.
Si une âme charitable passant par là daignait se pencher sur mon petit problème de rien du tout ce serait génialMerci d'avance !
Partager