Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.
Gestion de chaînes
azerty1 le 23/05/2011 à 01:08
Bonsoir! Savez vous si il existe une fonction qui serait le contraire de Epxr( ? C'est à dire une fonction qui transforme une valeur, un résultat en une chaine de caracteres? Pour par exemple faire quelque chose comme ça:
Code
:"A"->Chaîne1
:3->B
:Chaîne1+B->Chaîne1
De manière à obtenir Chaîne1= "A3"... Cependant cela ne marche pas... La seul chose que l'on peut obtenir avec ça, c'est Chaîne1="AB" en rajoutant des guillemets autour de B...
Alors comment faire apparaitre le résultats de queqlue chose dans une chaîne...? Merci d'avance!
Cocodidou le 23/05/2011 à 07:28
trotithuthur a écrit :
Bonsoir! Savez vous si il existe une fonction qui serait le contraire de Epxr( ? C'est à dire une fonction qui transforme une valeur, un résultat en une chaine de caracteres? Pour par exemple faire quelque chose comme ça:
Code
:"A"->Chaîne1
:3->B
:Chaîne1+B->Chaîne1
De manière à obtenir Chaîne1= "A3"... Cependant cela ne marche pas... La seul chose que l'on peut obtenir avec ça, c'est Chaîne1="AB" en rajoutant des guillemets autour de B...
Alors comment faire apparaitre le résultats de queqlue chose dans une chaîne...? Merci d'avance!
Il te faut passer par RégLin a+bx( pour mettre ton nombre dans une fonction a+0x (Y1 p.e

, puis faire Eq>Chaîne, puis enfin faire un sous-Chaîne sur cette chaîne en prenant sa longueur - 3 (correspondant au "+0x")

C'est un parcours du combattant que de transformer un nombre en chaîne...
azerty1 le 23/05/2011 à 08:50
Oula, effectivement, c'est assez compliqué, c'est dommage qu'il n'y ait pas de fonctions direct... :/ En tt cas, merci de ta réponse! =)Par contre, je ne sais pas utiliser RégLin(a+b

(je pensais qu'il fallait l'utiliser avec les listes...)... Peux tu me montrer comment transformer mon résultat en équation...? Merci!
sandro le 23/05/2011 à 09:28
Tu pourrait expliciter un peu s'il te plait, je sais utiliser Reglin( pour trouver une équation mais pas pour trouver une chaîne. Ca me changerais avantageusement de mon programme de 300 octés qui ne mache pas avec des nombres très grand ou très petits et qui teste rand par rand la valeur du chiffre et le rajoute à la chaîne.
Sandrolinkakro le 23/05/2011 à 21:24
Mon programme
VALSTR
Code
Prompt C
If C=0
Disp "0"
If C=0
Stop
abs(C->A
"."->Str1
"0123456789"->Str2
0->W
While iPart(A10^(-W
W+1->W
iPart(10fPart(A10^(-W->B
sub(Str2,B+1,1)+Str1->Str1
End
0->W
While fPart(A10^(W
iPart(10fPart(A10^(W)->B
Str1+sub(Str2,B+1,1)->Str1
W+1->W
End
If not(fPart(C))
sub(Str1,1,length(Str1)-1)->Str1
If C<0
"-"+Str1->Str1
Disp Str1
Votre méthode qui me plait bien sur le moment :
Code
{1,2}->L1
{A,A}->L2 // A est la variable convertie en chaîne
LinReg(a+bx) L1,L2,Y1
Equ>String(Y1,Str1
DelVar Y1
ClrList L1,L2
sub(Str1,1,length(Str1)-3->Str1 // résultat
Mon programme affiche toujours toutes les décimales présentes en mémoire. (permet accessoirement de verrifier les approximations de calculs)
Votre idée donne un nombre dont la présentation est parfois scientifique. (vous perdez alors les décimales)
EDIT 4/11/2013 : le
tutoriel de mdr1 présente lui aussi la méthode par régression et une OPTIMISATION importante. Mais je ne sais pas depuis quand.
EDIT : 3/12/2013 :
autre discussion sur le même [...]ec application. sandro le 24/05/2011 à 08:23
pas mal la méthode, je ne savais pas que Reglin(ax+b) suportait un 3ème argument.
Merci
Sandroazerty1 le 24/05/2011 à 17:50
Génial! Merci beaucoup! Fallait le trouver! En tout cas, cela marche parfaitement! =)sandro le 24/05/2011 à 18:32
Merci beaucoup
c'est sur que maintenant que c'est testé, je ne risque plus de me servir de mon ancien programme.
Une question:
pourquoi obtient-on une erreure quand on fait:
Code
RegLin (ax+b) {1,2},{A,A},Y1
Merci d'avance
Sandro
linkakro le 24/05/2011 à 23:35
Toi aussi tu as essayé ?

J'ignore précisément pourquoi cela plante. C'est dans le fonctionnement de toutes les fonctions statistique.
Akmdad le 25/05/2011 à 21:46
moooa, sur ma 89, j'ai une fonction toute faite (lol)sandro le 25/05/2011 à 22:04
bien sur que j'ai essayé; ça parraissait un moyen éviden (mais faux) d'économiser de la mémoire, or j'y tient à mes octés (voir signature)
Sandro
PS: Akmdad, les TI89 ne sont pas à traiter sur ce forum (même si elles sont intéréssante, je l'avoue)azerty1 le 25/05/2011 à 22:09
C'est quand meme dommage que ça ne marche pas... :/ Je suis d'accord avec sandro, si on peut, autant économiser de la mémoire!

ps: petite parenthese: je pense qu'Akmdad veux simplement nous faire rager =) Mais bon, moi je trouve la 82stats.fr très bien aussi! Bref fin' de la paranthese! =)
sandro le 25/05/2011 à 22:23
si trotithuthur à raison, alors pense un peu à l'exigeance de la syntaxe.
VIVE LA LIBERTEE DE PROGRAMATION? DE SYNTAXE ET D'OPTIMISATION DES Z80
lol
Sandroazerty1 le 25/05/2011 à 22:28
sandro a écrit :
VIVE LA LIBERTEE DE PROGRAMATION? DE SYNTAXE ET D'OPTIMISATION DES Z80
J'aime! =) Enfin bon, on séloigne du sujet... =)
Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.