Soyez le premier à donner votre avis sur cette source.
Snippet vu 5 427 fois - Téléchargée 35 fois
#include "chaine.h" #include "entreeSortie.h" #include "chaine.cpp" #include "entreeSortie.cpp" //---------------------------------------------// // DECLARATION DES CONSTANTES // //---------------------------------------------// const int TAILLE_MAX = 255 ; //---------------------------------------------// // DEFINITION DES TYPES // //---------------------------------------------// typedef Chaine TabChaine [TAILLE_MAX] ; typedef char TabChar [TAILLE_MAX] ; // definition d une structure resultat pour comptage de chars struct nbchars { int nbutil ; // nombre de lettres int nbponct ; // nombre de ponctuation int nbechap ; // nombre de caractere d echappement int nbcesure ; // nombre de \n int nbespace ; // nombre d espcace ' ' } ; //---------------------------------------------// // PROTOTYPE DES SOUS-PROGRAMMES // //---------------------------------------------// // Ecriture d un tableau de chaine void afficherTexte (const TabChaine texte ) ; // Compte le nombre de chars utiles, de ponctuation, // d echappement, de cesure et d espace du texte nbchars compteChar (const TabChaine texte ) ; // Compte le nombre de chars Total du Texte int compteCharTotal ( const TabChaine texte ) ; // Compte la longueur logique d un tableau de chaine de caracteres // Le tableau se termine logiquement lorque l on rencontre la chaine // "EOT" pour End Of Table int longueur (const TabChaine tab ) ; // Renvoie le nombre de mots du texte et liste tous les mots // du texte int analyseur (const TabChaine texte ) ; //---------------------------------------------// // Programme principal // //---------------------------------------------// int main() { // Tableau contenant le texte a analyser TabChaine texte = { "\t Le jeune Takezo et son ami d'enfance, Matachi, \n", "rechappent d'une miraculeuse \n","et terrible catastrophe.\n","EOT" }; // Tableau contenant la liste des mots tabous // a ne pas prendre en compte lors de l analyse du texte TabChaine tabou = {"Le","qui","plu","tard","EOT"} ; // resultat des differents comptages nbchars res ; // Compteur des mots du texte int nbmots ; afficherTexte (texte) ; res = compteChar (texte) ; afficherNL (uneChaine("")) ; afficher (uneChaine("Nb caracteres utiles .... : ")); afficherNL (res.nbutil); afficher (uneChaine("Nb caracteres ponctuation .... : ")); afficherNL (res.nbponct); afficher (uneChaine("Nb caracteres echappement .... : ")); afficherNL (res.nbechap); afficher (uneChaine("Nb caracteres cesure .... : ")); afficherNL (res.nbcesure); afficher (uneChaine("Nb caracteres espacement .... : ")); afficherNL (res.nbespace); afficher (uneChaine("Nb caracteres total .... : ")); afficherNL (compteCharTotal(texte)) ; afficher (uneChaine("longueur liste tabou .... : ")); afficherNL(longueur(tabou)); afficher (uneChaine("Liste des mots du texte : ")); nbmots = analyseur (texte) ; afficher (uneChaine("Nb de mots du texte : ")); afficherNL (nbmots); saisir () ; } //-------------------------------------------// // CORPS DES SOUS PROGRAMMES // //-------------------------------------------// void afficherTexte (const TabChaine texte ) { for ( int j = 0 ; inf(texte[j],uneChaine("EOT")) ; j++ ) { for (int i = 0 ; i < longueur (texte[i]) ; i++ ) { if (egal(texte[i],uneChaine("EOT"))) { afficherNL (uneChaine (" ")) ; } else { afficher (texte[i]) ; } } } } int compteCharTotal ( const TabChaine texte ) { int CharTotal = 0 ; for (int c = 0 ; diff(texte[c],uneChaine("EOT")) ; c++ ) { CharTotal = longueur (texte[c]) + CharTotal ; } return (CharTotal) ; } nbchars compteChar (const TabChaine texte ) { nbchars ici ; for ( int j = 0 ; inf(texte[j],uneChaine("EOT")) ; j++ ) { for (int i = 0 ; i < longueur (texte[i]) ; i++ ) { } }; return (ici) ; } int longueur (const TabChaine tab ) { int longs = 0 ; for ( int j = 0 ; supEgal(tab[j],uneChaine("EOT")) ; j++ ) { longs = longueur(tab[j]) + longs ; }; return (longs) ; } int analyseur (const TabChaine texte ) { // dans un mot const int DEDANS = 1 ; // a l exterieur d un mot const int DEHORS = 0 ; int nbmots = 0 ; int etat = DEHORS ; // a suivre ...... return (nbmots) ; }
23 janv. 2003 à 12:59
12 janv. 2003 à 19:02
Evite d'écrire tout en majuscules :)
11 janv. 2003 à 15:12
11 janv. 2003 à 14:16
11 janv. 2003 à 11:41
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.