Chaîne de caractère

Fermé
Anna - 9 nov. 2016 à 17:19
 Anna - 12 nov. 2016 à 19:40
Bonjour,

Mon prof nous a corrigé l'exercice suivant :

Ecrire un algorithme qui permet de compter le nombre de mots dans une phrase.
La phrase commence obligatoirement par une lettre et les mots sont séparés par des espaces.

Correction:

Algorithme Comptage_Mots
Variables
i, L, nb_mot : Entier
phrase : Chaîne
Début
Ecrire(”Entrer une phrase non vide : ”)
Lire(phrase)
L<--Long(phrase)
nb_mot <-- 1
Pour i de 1 à L Faire
Si(phrase[i] = ” ”) Alors
nb_mot <-- nb_mot + 1
FinSi
FinPour
Ecrire(”Nombre de mots = ”,nb_mot)
Fin.

Mais je vois que dans la correction, il n'a pas testé si le premier caractère est une lettre ou non , il se peut que le premier caractère soit un chiffre ou autre chose ?
Qui peut m'expliquer ça SVP !
A voir également:

2 réponses

Whismeril Messages postés 19073 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 23 juin 2024 916
9 nov. 2016 à 17:39
Bonsoir

tel qu'est formulé le sujet
La phrase commence obligatoirement par une lettre et les mots sont séparés par des espaces.
est un fait pas un truc à vérifier.
0
Merci bien.
0
[Dal] Messages postés 6189 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 24 juin 2024 1 088
9 nov. 2016 à 18:25
Par contre, il n'est rien précisé au sujet du dernier caractère de la chaîne.

Du coup, je pense que l'algorithme donne un résultat faux si la chaîne saisie se termine par un espace... il comptera à mon sens un mot en trop

:-P
0
Anna > [Dal] Messages postés 6189 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 24 juin 2024
9 nov. 2016 à 18:28
Il ne faut pas oublier que le parcours ne dépasse pas la longueur de phrase.
0
[Dal] Messages postés 6189 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 24 juin 2024 1 088
9 nov. 2016 à 19:23
Je ne vois pas le rapport avec ma remarque.

Un espace est un caractère et peut se trouver à la fin de la chaîne, si l'utilisateur l'y met.
0
Whismeril Messages postés 19073 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 23 juin 2024 916
9 nov. 2016 à 20:50
Bonsoir Dal, très juste.
0
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
9 nov. 2016 à 22:12
Il faudrait de plus maintenir un drapeau indiquant les espaces consécutifs.
0
T'as raison merci
0