π
<-
Chat plein-écran
[^]

Trouver lettre dans chaine

Re: Trouver lettre dans chaine

Message non lude PiR » 26 Fév 2015, 19:09

Bonjour,
J'ai bien testé cette technique mais ça me dit dim Invalide
Voici mon code:
Code: Tout sélectionner
Input "NB", chaine1
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"->chaine3
longueur(chaine3)->A
For(X,2,A+2)
sousChaine(chaine3,x-1,x)->chaine4
carChaine(chaine1,chaine4)
if rep>B
rep->b
end
disp B
Mes programmes (tous en basic) sont ici
Avatar de l’utilisateur
PiR
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 46.9%
 
Messages: 45
Inscription: 25 Fév 2015, 18:33
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S-SI

Re: Trouver lettre dans chaine

Message non lude grosged » 26 Fév 2015, 20:55

Hmmm....j'essaye de déchiffrer ça ( j'suis pas habitué aux instructions francisées )

Je vois plusieurs erreurs:
remplace For(X,2,A+2) par For(X,1,A)
car on va scruter TOUS les caractères de chaîne1 (pas chaîne3, car c'est carchaîne qui s'en chargera), et pas moins (l'erreur du 2) et pas plus (l'erreur du A+2)

puis
Code: Tout sélectionner
sousChaine(chaine3,x-1,x)->chaine4
par
Code: Tout sélectionner
sousChaîne(chaîne1,x,1)->chaine4


et je vois aussi: carChaîne(chaîne1,chaîne4) à remplacer par carChaîne(chaÎne3,chaîne4)
car on cherche où se retrouve chaque caractère de chaîne1 (ici, contenu dans chaîne4) parmi chaîne3

et ne pas oublier, au tout départ, de mettre B à 0
Avatar de l’utilisateur
grosgedVIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 30.2%
 
Messages: 770
Images: 75
Inscription: 14 Sep 2011, 12:29
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Trouver lettre dans chaine

Message non lude grosged » 26 Fév 2015, 21:26

version optimisée:

Code: Tout sélectionner
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"→Chaîne3
Input "NB",Chaîne1
0
For(X,1,longueur(Chaîne1
max(Rep,carChaîne(chaîne3,sous-Chaîne(Chaîne1,X,1
End
Disp Rep


La même en version "non francisée:
Code: Tout sélectionner
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"→Str3
Input "NB",Str1
0
For(X,1,length(Str1
max(Ans,inString(Str3,sub(Str1,X,1
End
Disp Ans
Avatar de l’utilisateur
grosgedVIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 30.2%
 
Messages: 770
Images: 75
Inscription: 14 Sep 2011, 12:29
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Trouver lettre dans chaine

Message non lude PiR » 26 Fév 2015, 22:34

CA MARCHE !
Merci beaucoup ! :D
Mes programmes (tous en basic) sont ici
Avatar de l’utilisateur
PiR
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 46.9%
 
Messages: 45
Inscription: 25 Fév 2015, 18:33
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S-SI

Re: Trouver lettre dans chaine

Message non lude grosged » 26 Fév 2015, 22:44

you're welcome ;)
Avatar de l’utilisateur
grosgedVIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 30.2%
 
Messages: 770
Images: 75
Inscription: 14 Sep 2011, 12:29
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Trouver lettre dans chaine

Message non lude PiR » 26 Fév 2015, 23:05

J'aurais une autre question, qui je pense est plus technique:
maintenant que je connais ma base minimum avec le prgm; dans mon programme de conversion de base je demande la base de départ et bien j'aimerais que la base minimum soit en valeur par défaut comme un questionnaire pré-rempli
je m'explique:
j'ai:
Code: Tout sélectionner
...(prgm juste au dessus)
end
disp rep
input "Base de départ",C

je voudrais sur mon écran (imaginons que rep=2)
Base de départ: 2 (attente de validation de l'utilisateur + possibilité de changer le 2 en 10,20,5,...)

Je sais pas si mon explication est claire, si vous avez des question n'hésitez pas
Mes programmes (tous en basic) sont ici
Avatar de l’utilisateur
PiR
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 46.9%
 
Messages: 45
Inscription: 25 Fév 2015, 18:33
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S-SI

Re: Trouver lettre dans chaine

Message non lude grosged » 27 Fév 2015, 11:08

Malheureusement, l'instruction input nous force à entrer une valeur avant de valider
On pourrait attendre une touche, si c'est pas [entrer] alors on part sur un input
genre:

Code: Tout sélectionner
Repeat Ans:getKey:End:if Ans≠105:input"Base de dép. :",D


Mais ça impliquerait de préalablement afficher "Base de dép. :" suivi de la variable D exactement à l'endroit du input
Avatar de l’utilisateur
grosgedVIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 30.2%
 
Messages: 770
Images: 75
Inscription: 14 Sep 2011, 12:29
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Trouver lettre dans chaine

Message non lude PiR » 27 Fév 2015, 16:15

Merci
Mais du coup si je tapes pas [enter] mais autre chose et bien ce autre chose n'est pas pris en compte, il faut le retaper
Mes programmes (tous en basic) sont ici
Avatar de l’utilisateur
PiR
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 46.9%
 
Messages: 45
Inscription: 25 Fév 2015, 18:33
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S-SI

Re: Trouver lettre dans chaine

Message non lude Wistaro » 27 Fév 2015, 20:21

Sinon tu peux partir dans un input graphique, ou tu partirais d'une chaîne contenant 2 et tu remplacerais si l'utilisateur tape autre chose.
Nouveau sur le site, Anonymous ? Avant de poster sur le chat et sur le forum, n'oublie pas de lire les règles. En cas de problème, tu peux m'envoyer un message, je réponds rapidement.

Liens utiles:
Image
Découvre mes programmes et mon site!
Avatar de l’utilisateur
WistaroSuper Modo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 87.5%
 
Messages: 3153
Images: 37
Inscription: 25 Fév 2013, 16:21
Localisation: Toulouse
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Ingénieur en électronique
YouTube: Wistaro
Twitter/X: Wistaro
GitHub: Wistaro

Re: Trouver lettre dans chaine

Message non lude PiR » 27 Fév 2015, 23:33

Wistaro a écrit:Sinon tu peux partir dans un input graphique, ou tu partirais d'une chaîne contenant 2 et tu remplacerais si l'utilisateur tape autre chose.

Bonne idée mais je n'aime pas trop utiliser les graphiques...
Oui je sais je suis un petit peu (beaucoup) exigeant :#roll#:
Mes programmes (tous en basic) sont ici
Avatar de l’utilisateur
PiR
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 46.9%
 
Messages: 45
Inscription: 25 Fév 2015, 18:33
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S-SI

PrécédenteSuivante

Retourner vers TI-Basic

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 8 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
975 utilisateurs:
>956 invités
>14 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)
cron