Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3612 connectés 

  FORUM HardWare.fr
  Programmation
  Algo

  Algo pour corrigé des fautes de frappes...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Algo pour corrigé des fautes de frappes...

n°1324957
cyber_fran​ciss
Posté le 14-03-2006 à 12:10:59  profilanswer
 

Bonjour à tous,  
 
je voudrais avoir votre avis sur ma logique est elle bonne ou non ?  
 
l'énnoncé est le suivant :  
 
l'utilisateur doit saisir une phrase et le programme corriger les erreurs du type " ." (il faut enlever l'espace) ou bien alors mettre des majuscules après un point ou en début de phrase.
 
 
je vous donne une ébauche de mon algo :  
 
Debut
 
Afficher "saisir une phrase"  
saisir phrase  
longueur_phrase = longueur(phrase)  
 
pour i de 1 à longeur_phrase
Faire
 
Si (souschaine(phrase,i,2)) = " ."
alors souchaine(phrase,i)) = ""
Finsi
 
Si (souschaine (phrase,1,1) < ... et > ...   //  ... = les valeurs en ASCII en minuscules
alors (souchaine(phrase,1,1) = phrase[1] +32  // 32 pour moi c'est le nombre qu'il faut rajouter au code ascii minuscule pour obtenir la Maj  
Finsi  
 
Si (souschaine (phrase,i,2)) = "." +ASCI > ... et ASCI < ...
Alors (souchaine(phrase,i+1,1))  = phrase[i+1] +32
 
Finpour
 
Afficher phrase  
 
Fin
 
Voila il est inutile de préciser que je débute alors pour toutes suggestion faite moi signe :bounce:  
 

mood
Publicité
Posté le 14-03-2006 à 12:10:59  profilanswer
 

n°1325554
nargy
Posté le 15-03-2006 à 00:13:07  profilanswer
 

C est un peu limite comme algo. De la façon dont tu l a écrit ça ne se code pas facilement dans un language. Et il y a des trucs faux.
 
Il faudrait que tu donne la définition de souschaine(...).
 
Les lignes:

Code :
  1. Si (souschaine(phrase,i,2)) = " ."
  2. alors souchaine(phrase,i)) <- ""
  3. Finsi


 
devrait changer la taille du tableau, mais tu ne donne pas à souschaine() le nombre de caractères à remplacer. En plus cest faux, il faudrait remplacer " ." par ".".
 
Ce serait plutot:

Code :
  1. Si (souschaine(phrase,i,2)) = " ."
  2. alors remplacersouchaine(phrase,i,1,"" ))
  3. Finsi


 
Dans:

Code :
  1. souchaine(phrase,1,1) <- phrase[1] +32


 
tu utilise phrase[1], qui est le tout premier caractère de la chaine. Je dirai plutot:
 

Code :
  1. Si (phrase[i]='.' et phrase[i+1]<= 'a' et phrase[i+1]>= 'z' )
  2.   alors phrase[i+1] <- phrase[i+1]-'a'+'A'
  3.   Finsi


 
 
 

n°1325556
nargy
Posté le 15-03-2006 à 00:14:38  profilanswer
 

> En plus cest faux, il faudrait remplacer " ." par ".".  
Ha ouais, pardon j avais pas remarqué que c est ce que tu faisait.

n°1325558
nargy
Posté le 15-03-2006 à 00:17:14  profilanswer
 

> tu utilise phrase[1], qui est le tout premier caractère de la chaine.
et c est aussi ce qu il faut faire, je suis fatigué, je vais me coucher moi!
 
ton algo est à peu près correct

n°1326271
cyber_fran​ciss
Posté le 15-03-2006 à 22:38:29  profilanswer
 

ok  :)  merci de m'avoir répondu nargy ^^


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Algo

  Algo pour corrigé des fautes de frappes...

 

Sujets relatifs
sit exo algoAlgo génétique
Algo du CRCalgo de base
Algo de combinaisonAlgo de tirage de cartes
[Algo] Axes d'un graphiquealgo (qqchose compris entre 2 nombres)
[SGBD] Algo d'une requêteL' algo d' une équation
Plus de sujets relatifs à : Algo pour corrigé des fautes de frappes...


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)