Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas poster de réponses
[Réglé] Chaine , séparer en mots
Auteur Message
alix59



Autorisation : Membre
Nb de messages : 7
Inscrit le : Sam 11 Nov 2017, 20:36
Posté le : Mer 13 Déc 2017, 18:40    

bonjours

j ai besoin d aide pour savoir si il est possible de faire en sorte que une chaines donne un chiffre pour un mot ou de diviser la chaines en plusieurs partie non égal ( chaines1(je,tu,il,nous,vous,ils) )
exemple:

input "",A
(trouver A dans chaines 1)
(A est le 4 eme mots de la chaines 1)

merci a vous et bonne journée ou soirée

 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
Mingerton



Autorisation : Membre
Nb de messages : 504
Inscrit le : Ven 07 Déc 2012, 20:09
Posté le : Jeu 14 Déc 2017, 16:24    

Bonjour,

J'ai du mal à comprendre ta question, je vais répondre à ce que j'ai compris.

Bonc tu as une chaîne "jetuilnousvousils" pour reprendre ton exemple, et tu veux que quand on entre le chiffre 2 il ressorte le 2e mot de cette chaîne.

C'est quelque chose d'assez compliqué si les mots sont collés dans la chaîne (pas de dictionnaire en TI Basic pour reconnaître les mots). Par contre, si dans ta chaine les mots sont déjà séparés ça se fait assez facilement.

Donc admettons que ta chaîne soit "je,tu,il,nous,vous,ils" (on sépare avec des virgules).

Dans le code on doit :
- demander le numéro du mot qu'on cherche
- trouver l'index de la virgule avant ce mot
- trouver l'index de la virgule après ce mot
- retourner la sous-chaîne de la chaîne principale entre ces deux index

Les fonctions à notre disposition :
- inString(chaîne, sous chaîne,index de départ)/carChaîne en français : donne le premier index où l'on retrouve la sous chaîne dans la chaîne de départ à commencer par l'index de départ
- sub(chaîne,index de départ,longueur)/sous-chaîne en français : donne la sous chaîne à partir de index de longueur donnée

Donc en code on a quelque chose comme ça :


Code
"JE,TU,IL,NOUS,VOUS,ILS->Str1
Prompt A
0
For(I,1,A-1
inString(Str1,",",Ans+1
End
Ans->S
-S-1+inString(Str1,",",S+1
If Ans<0
length(Str1)-S
sub(Str1,S+1,Ans



N'hésite pas à poser des questions si tu ne comprends pas

----------------------
Mes articles
Mes programmes en ligne (je termine peu de projets)

Guide traduction Algo-Basic, par Linkakro
Catalogue des fonctions 82/83/84 FR/EN
 Adresse email Haut de page Bas de page 
 
alix59



Autorisation : Membre
Nb de messages : 7
Inscrit le : Sam 11 Nov 2017, 20:36
Posté le : Dim 17 Déc 2017, 14:26    

bonjours
un grand merci a toi car c est exactement se que je voulais
j ai a comprit une partie mais je ferai mes propre test en me basent sur ton programme afin de comprendre intégralement sont fonctionnement

encore merci a toi et bonne journée sarcatisk.gif

 Adresse email Haut de page Bas de page 
 
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas poster de réponses





  Powered by Fire-Soft-Board v1.0.10 © 2004 - 2024 Groupe FSB
Page générée en 9 requêtes
BlackOne par Grimmlink