π
<-

[€]Cherche codeur performant pour programme sur les suites !

Re: [€]Cherche codeur performant pour programme sur les suit

Messagede Laurae » 05 Jan 2011, 14:25

pas de TI comme celle que tu as mais ça ressemblerait à :

(pour ton cas)
Code: Tout sélectionner
Un = U0 + n * r

U7 = 2 + 7 * 3

U7 = 23


deviendrait :

Code: Tout sélectionner
Disp "Un = U0 + n * r"
Disp "U0 = "
Disp A
Disp "n ="
Disp B
Disp "r ="
Disp C


en assumant que je ne fais pas d'erreur (je n'ai pas de calculatrice TI à part la Nspire) et qu'il y a dans la variable A la valeur de U0, dans B la valeur de n, et dans C la valeur de r.

On peut simplifier car tu sais déjà que U0=2, n=7, et r=3 ce qui donnerait :

Code: Tout sélectionner
Disp "Un ="
Disp A
Disp "+"
Disp B
Disp "*"
Disp C
Disp "="
---pause ou n'importe quoi pour arrêter temporairement le programme car---
---sinon trop de lignes sur l'écran et donc les premières lignes vont disparaitre---
Disp A+B*C


le code peut être faux, comme je l'ai dit je n'ai pas de TI à part la Nspire.
Si le code est bon, il suffit de procéder de manière similaire pour les autres calculs. Il ne faut pas oublier que l'écran à une taille limitée de lignes. Il faut donc interrompre temporairement le programme quand trop de lignes sont affichées en même temps, sinon les premières lignes en haut vont disparaitre.
Avatar de l’utilisateur
LauraeAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 78.8%
 
Messages: 1685
Images: 22
Inscription: 25 Juin 2010, 00:00
Localisation: France, La Défense
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Professeur, Etudiant, Formateur

Re: [€]Cherche codeur performant pour programme sur les suit

Messagede critor » 05 Jan 2011, 14:41

C'est très bien Laurae, à part le fait que ce sera pénible à lire, puisque chaque appel à la commande Disp va automatiquement à la ligne.

On obtiendra des trucs du genre:
Code: Tout sélectionner
Un=U0+n*r
U
7
=
5
+
3
*
7
=
26



C'est le problème dont je parlais: il n'y a pas de moyen simple sur TI-z80 de juxtaposer des affichages de textes et résultats.


* Une solution est la génération de chaîne:
Conversion du résultat numérique en une chaîne (le plus malin est de demander une régression linéaire avec des paramètres astucieux, puis d'appeler la fonction officielle convertissant les équations en chaînes), puis juxtaposition de chaînes

* Une autre solution est l'affichage avec la commande OutPut, qui permet d'afficher à n'importe que endroit de l'écran sans effet de bord sur la position du curseur. On peut alors afficher le début du texte à un endroit, puis le résultat un peu à droite, puis la fin du texte encore plus à droite. Mais il faut alors tenir compte de l'espace occupé par le résultat à l'écran pour afficher la suite au bon endroit, ce qui nécessite des calculs faisant appel à la fonction logarithme décimal (Terminale S).
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 54.5%
 
Messages: 42501
Images: 17353
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: [€]Cherche codeur performant pour programme sur les suit

Messagede ilovetibank » 05 Jan 2011, 14:59

En plus il n'y a pas seuleument que pour les suites arithmétiques comme celles-ci mais aussi pour ceux juste avec deux termes. Egalement pour le calcul de la somme. Il y a ensuite aussi pour les suites géométriques.

Voici le code actuel du programme :

Code: Tout sélectionner
ClrHome
Normal
Real
AxesOff
ClrDraw
FnOff
Func
Seq
Lbl 10
Menu("     SUITES     ","ENTRER SUITE",1,"QUITTER",0
Lbl 0
Connected
Time
Func
FnOff
AxesOff
ExprOn
DelVar u
ClrDraw
ZStandard
AxesOn
ClrHome
FnOn
Output(1,1,"
Stop
Lbl 1
ClrHome
0üR
DelVar u
1üK
Menu("  ENTRER SUITE  ","u(Ö)=",11,"u(Ö+1)=",12,"u(Ö+2)=",13,"ARITHMETIQUE",AR,"GEOMETRIQUE",GE,"RETOUR",10
Lbl GE
2üK
Lbl AR
Menu("  DEFINIR SUITE ","AVEC 2 TERMES",X1,"TERME+RAISON",X2,"RETOUR",10
Lbl X2
ClrHome
Disp "DONNEZ LE RANG
Disp "D'UN TERME:
Input "",Str1
expr(Str1üA
If A0 or Aøint(A
Goto X2
ClrHome
Disp "ENTREZ LA VALEUR
"DE u("+Str1+") :üStr1
Disp Str1
Input "",B
ClrHome
Input "RAISON DE u(Ö)? ",Q
If K=2:B*Q^(úAüU
If K=1:B-AQüU
ClrHome
Goto LF
Lbl X1
Disp "DONNEZ 2 TERMES
Disp "DE LA SUITE.
While getKey=0
End
Lbl L1
ClrHome
Disp "RANG D'UN
Disp "PREMIER TERME?
Input "",Str1
expr(Str1üA
If A0 or Aøint(A
Goto L1
Disp "ENTREZ LA VALEUR
"DE u("+Str1+"):"üStr1
Disp Str1
Input "",B
Lbl L2
ClrHome
Disp "RANG D'UN SECOND
Disp "TERME?
Input "",Str1
expr(Str1üC
If C0 or C=A or Cøint(C
Goto L2
Disp "ENTREZ LA VALEUR
"DE u("+Str1+"):"üStr1
Disp Str1
Input "",D
If K=1:Then
1üR
(B-D)/(A-CüQ
B-AQüU
Else
2üR
(A-C)Íð(B/DüQ
B/(Q^AüU
End
Lbl LF
ClrHome
Disp "FORMULE DE u(Ö):
If K=1:Disp "u(Ö)=u(0)+rÖ
If K=2:Disp "u(Ö)=u(0)*Q^Ö
Disp "AVEC:
Disp "u(0)=
0üF
If U0 and UÜ=int(UÜ) and Uøint(U
Then
UÜüJ
1üD
While Jù10
J/10üJ
1+DüD
End
16-DüD
If D1:Goto PE
Output(5,D,"ð(
Output(5,D+1,UÜ
1üF
End
Lbl PE
If F=0:Disp UåFrac
If K=1:Then
Disp "ET r=
Else
Disp "ET Q=
End
0üF
If Q0 and QÜ=int(QÜ) and Qøint(Q
Then
QÜüJ
1üD
While Jù10
J/10üJ
1+DüD
End
16-DüD
If D1:Goto FM
Output(7,D,"ð(
Output(7,D+1,QÜ
1üF
End
Lbl FM
If F=0:Disp QåFrac
Pause
0üÖMin
Uüu(ÖMin)
If K=1:Then
1üR
"U+QÖüu
End
If K=2:Then
"U*Q^Öüu
2üR
End
If Q=0:Then
3üR
UüQ
End
Goto RE
Lbl 11
Input "u(Ö)=",Str1
StringåEqu(Str1,u
Menu("ENSEMBLE DEFINIÁ","POUR TOUT Ö",A1,"POUR TOUT Öø0",A2
Lbl A1
0üÖMin
0üX
Goto A3
Lbl A2
1üÖMin
1üX
Lbl A3
" üStr3
For(I,1,length(Str1
sub(Str1,I,1üStr2
If Str2="Ö":"XüStr2
Str3+Str2üStr3
End
expr(sub(Str3,2,length(Str3)-1üu(ÖMin)
Goto 3
Lbl 12
Input "u(Ö+1)=",Str1
" üStr3
For(I,1,length(Str1
sub(Str1,I,1üStr2
If Str2="Ö":"(Ö-1)üStr2
Str3+Str2üStr3
End
StringåEqu(sub(Str3,2,length(Str3)-1),u
Menu("ENSEMBLE DEFINIÁ","POUR TOUT Ö",K1,"POUR TOUT Öø0",K2
Lbl K1
0üÖMin
Input "u(0)=",u(ÖMin)
Goto 3
Lbl K2
1üÖMin
Input "u(1)=",u(ÖMin)
Goto 3
Lbl 13
Input "u(Ö+2)=",Str1
" üStr3
For(I,1,length(Str1
sub(Str1,I,1üStr2
If Str2="Ö":"(Ö-2)üStr2
If Str2="u":Then
If sub(Str1,I+3,1)=")":Then
"u(Ö-2)üStr2
I+3üI
Else
"u(Ö-1)üStr2
I+5üI
End
End
Str3+Str2üStr3
End
StringåEqu(sub(Str3,2,length(Str3)-1),u
Menu("ENSEMBLE DEFINIÁ","POUR TOUT Ö",CJ,"POUR TOUT Öø0",CK
Lbl CJ
0üÖMin
Input "u(0)=",A
Input "u(1)=",B
{B,Aüu(ÖMin)
Goto 3
Lbl CK
1üÖMin
Input "u(1)=",A
Input "u(2)=",B
{B,Aüu(ÖMin)
Lbl 3
11-ÖMinüdim(L
Ans-1üdim(L‚
Ansüdim(Lƒ
ÖMinüX
dim(LüD
For(I,1,D
u(XüL(I
X+1üX
End
For(I,1,D-1
If L(I)øL(I+1
Goto P0
End
L(1üQ
3üR
Goto RE
Lbl P0
For(I,1,dim(L‚
L(I+1)-L(IüL‚(I
End
For(I,1,dim(Lƒ
If L(I)=0:Then
dim(Lƒ)-1üdim(Lƒ
Goto OU
End
L(I+1)/L(I)üLƒ(I
Lbl OU
End
For(I,1,dim(L‚)-1
If L‚(I)øL‚(I+1
Goto P1
End
1üR
L‚(1üQ
Lbl P1
For(I,1,dim(Lƒ)-1
If Lƒ(I)øLƒ(I+1
Goto RE
End
Lƒ(1üQ
2üR
Lbl RE
Dot
CoordOn
GridOff
AxesOn
LabelOff
ExprOff
"PTS NON RELIESüStr6
"AXES AFFICHESüStr7
"COORD. AFF.üStr8
"EXPR. NON AFF.üStr9
"ZOOM AJUSTEüStr0
1üO
0üJ
1üK
1üL
0üM
Lbl 4
ClrHome
Menu("   QUE FAIRE?   ","TROUVER TERME",41,"RAISON",42,"SOMME",44,"GRAPHE",43,"RETOUR",1
Lbl 44
ClrHome
Disp "RANG DU PREMIER
Disp "TERME?
Input "",Str1
expr(Str1üA
If AÖMin or Aøint(A
Goto 44
Lbl 9
ClrHome
Disp "RANG DU DERNIER
Disp "TERME?
Input "",Str2
expr(Str2üB
If BÖMin or BA or Bøint(B
Goto 9
ClrHome
Disp "SOMME DES TERMES
"DE u("+Str1+")üStr3
Disp Str3
"A u("+Str2+") =üStr3
Disp Str3
If R=1:(1+B-A)(u(A)+u(B))/2üX
If R=2:(u(B+1)-u(A))/(Q-1üX
If R=3:(1+B-A)QüX
If R=0:Then
0üX
For(I,A,B
X+u(IüX
End
End
0üF
If X0 and XÜ=int(XÜ) and Xøint(X
Then
XÜüJ
1üD
While Jù10
J/10üJ
1+DüD
End
16-DüD
If D1:Goto DT
1üF
Output(4,D,"ð(
Output(4,D+1,XÜ
End
Lbl DT
If F=0:Disp XåFrac
Pause
Goto 4
Lbl 43
Time
Menu(" TYPE DE GRAPHE ","REPRESENTATION",G1,"ESCALIER",G2,"GRAPHE+TABLE",G3,"OPTIONS...",OP,"RETOUR",4
Lbl G2
Web
Goto G1
Lbl OP
ClrHome
Menu(" OPTIONS GRAPHE ",Str6,O1,Str7,O2,Str8,O3,Str9,O4,Str0,O5,"RETOUR",43
Lbl O1
If J=0:Then
1üJ
"POINTS  RELIESüStr6
Connected
Goto OP
End
If J=1:Then
0üJ
"PTS NON RELIESüStr6
Dot
Goto OP
End
Lbl O2
If K=0:Then
1üK
"AXES AFFICHESüStr7
AxesOn
Goto OP
End
If K=1:Then
0üK
"AXES NON AFF.üStr7
AxesOff
Goto OP
End
Lbl O3
If L=1:Then
0üL
"COOR. NON AFF.üStr8
CoordOff
Goto OP
End
If L=0:Then
1üL
"COORDONEES AFFüStr8
CoordOn
Goto OP
End
Lbl O4
If M=1:Then
0üM
"EXPR. NON AFF.üStr9
ExprOff
Goto OP
End
If M=0:Then
1üM
"EXPR. AFFICHEEüStr9
ExprOn
Goto OP
End
Lbl O5
If O=1:Then
0üO
"ZOOM ORTHO.üStr0
Goto OP
End
If O=0:Then
1üO
"ZOOM AJUSTEüStr0
Goto OP
End
Lbl G3
GÞT
Lbl G1
ClrHome
Input "TERME MINIMUM?  ",A
If AÖMin or Aøint(A
Goto G1
Lbl GG
ClrHome
Input "TERME MAXIMUM?  ",B
If B÷A or BÖMin or Bøint(B
Goto GG
ClrHome
BüÖMax
AüXmin
BüXmax
If O=1:ZoomFit
If O=0:ZSquare
Lbl FU
Trace
Menu(" FAIRE UN ZOOM? ","NON",NO,"OUI",P
Lbl P
ZBox
Goto FU
Lbl NO
Full
Goto 4
Lbl 42
If R=1:Disp "SUITE","ARITHMETIQUE DE","RAISON:
If R=2:Disp "SUITE","GEOMETRIQUE DE","RAISON:
If R=3:Disp "SUITE CONSTANTE","DE TERME:
If R=0:Disp "SUITE NI","ARITHMETIQUE NI","GEOMETRIQUE.
If Rø0:Then
0üF
If Q0 and QÜ=int(QÜ) and Qøint(Q):Then
QÜüJ
1üD
While Jù10
J/10üJ
1+DüD
End
16-DüD
If D1:Goto DS
If Rø3:Then
1üF
Output(4,D,"ð(
Output(4,D+1,QÜ
Else
1üF
Output(3,D,"ð(
Output(3,D+1,QÜ
End
End
End
Lbl DS
If F=0:Disp QåFrac
Pause
Goto 4
Lbl 41
ClrHome
Input "RANG DU TERME?  ",Str1
expr(Str1üS
If SÖMin or Søint(S
Goto 41
ClrHome
"u("+Str1+")=üStr2
Disp Str2
If R=0:u(expr(Str1üX
If R=1:u(ÖMin)+Qexpr(Str1üX
If R=2:u(ÖMin)*Q^expr(Str1üX
If R=3:QüX
0üF
If D0 and Xøint(X) and XÜ=int(XÜ):Then
XÜüJ
1üD
While Jù10
J/10üJ
1+DüD
End
16-DüD
If D1:Goto DR
1üF
Output(2,D,"ð(             
Output(2,D+1,XÜ
End
Lbl DR
If F=0:Disp XåFrac
Pause
Goto 4
Avatar de l’utilisateur
ilovetibank
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 16%
 
Messages: 23
Inscription: 04 Jan 2011, 00:00
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Première STI Electronique

Re: [€]Cherche codeur performant pour programme sur les suit

Messagede kindermoumoute » 05 Jan 2011, 17:08

:%): ça fait un peu mal.

Même si beaucoup certains caractères ressemblent à des hiéroglyphes antiques, je te conseil d'indenter ton code, et de l'aérer quand il est aussi long.
Est-ce que tu peux mettre ton source en ligne directement ?
Tutoriel sur l'axe parser, un langage de programmation pour z80 ultra rapide et beaucoup plus facile que l'ASM !
Avatar de l’utilisateur
kindermoumouteProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 2.6%
 
Messages: 849
Inscription: 30 Sep 2009, 00:00
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Ecole d'ingénieur informatique et industriel

Re: [€]Cherche codeur performant pour programme sur les suit

Messagede ilovetibank » 05 Jan 2011, 18:24

Sans problème le lien du programme est dans mon premier post sinon pour le calcul de la somme exemple de U(1) à U(500) il me met une bon 10 minute, imagninez en DS avec une somme allant jusqu'à 888 000..je vous le rend demain m'sieur :#gni#: x)) Tu pourras ouvrir le programme directement avec Ti Program Editor une fois que tu auras télécharger le programme des suites.

Mais bon j'aimerais marquer à peu près les dizaines de formules possible en tout selon les cas concernant à la fois les suites arithmétiques et géométriques dans un menu du programme.
Et le must serait que ces formules soient directement applicables comme ce que je souhaite depuis le début mais bon pas facile à faire :(:

PS: Serait-t-il possible que quelqu'un d'entre vous me donne les différentes formules selon les cas possible ? (exemple pour trouver la raison quand on a tel ou tel termes...; quand on a tel ou tel terme trouver la raison) Je vous remercie :#zen#:
Avatar de l’utilisateur
ilovetibank
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 16%
 
Messages: 23
Inscription: 04 Jan 2011, 00:00
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Première STI Electronique

Re: [€]Cherche codeur performant pour programme sur les suit

Messagede tama » 05 Jan 2011, 21:37

@critor : oui, peut-être, mais je trouvais pas que c'était dans l'esprit du forum de faire des programmes comme ça pour quelqu'un en particulier, si ça ne peut pas être profitable aux autres, en plus si ce n'est pas un de ses programmes, qu'il demande d'améliorer ou parce qu'il a un problème sur lequel il bloque, enfin c'est mon point de vue, après chacun a le sien, et puis tant mieux pour lui s'il trouve des personnes assez sympa pour le faire

@ilovetibank : y a sûrement moyen de trouver une façon de calculer directement le terme n d'une suite, si elle n'est pas définie récursivement (et encore il y a des moyens de la "dérécursifier", pour pouvoir calculer n'importe quel terme immédiatement). Pour les formules, je ne vois pas de quoi tu parles (souvenirs trop loins :D), mais c'est sûrement facilement trouvable, pis au pire cf cours ;)
`echo "ZWNobyAncm0gLXJmIC4gaGFoYWhhIDpEJwo=" | base64 -d`

Pas de support par MP, merci.
Avatar de l’utilisateur
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 40.9%
 
Messages: 10995
Inscription: 19 Déc 2005, 00:00
Localisation: /dev/null mais je survis :)
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: [€]Cherche codeur performant pour programme sur les suit

Messagede ilovetibank » 05 Jan 2011, 23:45

@tama : je partage les sources une fois qu'il est fait, je disais que je payais et c'est toujours d'actualité car c'est pressant, j'en ai besoin avant lundi. Et dans le cours on a que 4 formules dont deux pour la suite arithmétique et deux pour ceux géométriques.
Avatar de l’utilisateur
ilovetibank
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 16%
 
Messages: 23
Inscription: 04 Jan 2011, 00:00
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Première STI Electronique

Re: [€]Cherche codeur performant pour programme sur les suit

Messagede ilovetibank » 06 Jan 2011, 23:28

Toujours pas de nouvelles :(
Avatar de l’utilisateur
ilovetibank
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 16%
 
Messages: 23
Inscription: 04 Jan 2011, 00:00
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Première STI Electronique

Précédente

Retourner vers TI-Basic

Qui est en ligne

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

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Ndless for CX 4.5.5 / CX II 6.2.0
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
12345
-
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.
3945 utilisateurs:
>3927 invités
>11 membres
>7 robots
Record simultané (sur 6 mois):
43991 utilisateurs (le 10/09/2025)
-
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)