π
<-
Chat plein-écran
[^]

[AXE]Longueur d'une chaine de caractères en pixel

Assembleur, Axe, ICE, BBC Basic...

[AXE]Longueur d'une chaine de caractères en pixel

Message non lude Ti64CLi++ » 10 Sep 2016, 15:38

Bonjour, j'ai créer une petite fonction appelé DimStr qui me sert à calculer quel taille en pixel fait une chaine de caractère se terminant par 0 (ex: "TEST"[00]->Str1). Les espaces à la fin des caractères sont pris en compte.
Seulement, ça ne marche pas comme je voudrais. Par exemple, pour la chaine de caractères "Salut, comment ca va?!"[00], il me renvoie comme longueur 19 alors que la longueur devrait être 77.
Voici mon code:
Code: Tout sélectionner
.AA
ClrHome
"Salut, comment ça va?!"[00]→Str1
Disp DimStr(Str1)Dec,
Repeat getKey(15)
End
Return

Lbl DimStr
0→r₃
For(r₂,0,longueur(r₁)-1
If dansChaîne("abcdeghjknopqruvxy?0123456789­-+/^{}θ…_%↑↓×\ABCDEFGHIJKLMNOPQRSTUVWXYZθ"[00],{r₁+r₂})
r₃+4→r₃
End
If 32={r₁+r₂}
r₃++
End
If dansChaîne("i.:!"[00],{r₁+r₂})
r₃+2→r₃
End
If dansChaîne("flst()[],;"[00],{r₁+r₂})
r₃+3→r₃
End
If dansChaîne("z&~"[00],{r₁+r₂})
r₃+5→r₃
End
If dansChaîne("mw*π$#@"[00],{r₁+r₂})
r₃+6→r₃
End
End
r₃
Return

Si quelqu'un pouvait m'aider, je lui en serait très reconnaissant ^^
Merci
Image
Avatar de l’utilisateur
Ti64CLi++Modo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 63.4%
 
Messages: 3039
Images: 61
Inscription: 04 Juil 2014, 14:40
Localisation: Valence 26
Genre: Homme
Calculatrice(s):
Classe: 1°S-SVT
GitHub: Ti64CLi

Re: [AXE]Longueur d'une chaine de caractères en pixel

Message non lude kindermoumoute » 10 Jan 2017, 07:44

"dansChaîne()" prend un pointeur en deuxième argument.

Code: Tout sélectionner
.AA
ClrHome
"Salut, comment ça va?!"[00]→Str1
Disp DimStr(Str1)Dec,
Repeat getKey(15)
End
Return

Lbl DimStr
0→r₃
longueur(r₁)→r₂
For(r₂
If 32={r₁}
r₃++
ElseIf dansChaîne("i.:!"[00],r₁)
r₃+2→r₃
ElseIf dansChaîne("flst()[],;"[00],r₁)
r₃+3→r₃
ElseIf dansChaîne("z&~"[00],r₁)
r₃+5→r₃
ElseIf dansChaîne("mw*π$#@"[00],r₁)
r₃+6→r₃
Else
r₃+4→r₃
End
r₁++
End
r₃
Return
Essayez l'axe parser, un nouveau langage de programmation pour z80 ultra rapide et beaucoup plus facile que l'ASM !
Avancement du tutoriel :
- Les débuts en Axe :
en ligne

- Notions de programmation avancés :
en ligne

- 3ème partie :
en ligne

- 4ème partie : 10%
- Annexe
en ligne
Avatar de l’utilisateur
kindermoumouteProg.
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Prochain niv.: 80.2%
 
Messages: 848
Inscription: 30 Sep 2009, 00:00
Genre: Homme
Calculatrice(s):
Classe: Ecole d'ingénieur informatique et industriel

Re: [AXE]Longueur d'une chaine de caractères en pixel

Message non lude Ti64CLi++ » 10 Jan 2017, 13:50

Ah, kindermoumoute ^^
En fait, j'ai oublié de préciser, mais le topic est résolu, je vais modifier ^^

Désolé du double post, mais @kindermoumoute est-ce que tu pourrais passer sur le sujet [Big tuto]Langage calculatrices TI (z80) L'axe Parser sur open classroom?

Double post combiné par TheMachine02
Image
Avatar de l’utilisateur
Ti64CLi++Modo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 63.4%
 
Messages: 3039
Images: 61
Inscription: 04 Juil 2014, 14:40
Localisation: Valence 26
Genre: Homme
Calculatrice(s):
Classe: 1°S-SVT
GitHub: Ti64CLi


Retourner vers Langages alternatifs

Qui est en ligne

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

-
Rechercher
-
Sujets à la une
"NumWorks++": Challenge de modification matérielle pour rajouter une puce de mémoire Flash !
Offre TI-Planet/Jarrety pour avoir la TI-83 Premium CE avec son chargeur pour 79,79€ port inclus !
Offre TI-Planet/Jarrety pour avoir la TI-Nspire CX CAS à seulement 130€ TTC port inclus!
Jailbreake ta TI-Nspire avec Ndless et profite des meilleurs jeux et applications !
Transforme ta TI-Nspire CX en console Game Boy Advance!
12345
-
Donations/Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
PayPal : paiement en ligne sécurisé - secure online payments
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 
-
Stats.
431 utilisateurs:
>398 invités
>27 membres
>6 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)