π
<-

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

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

Unread postby Laurae » 05 Jan 2011, 14:25

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

(pour ton cas)
Code: Select all
Un = U0 + n * r

U7 = 2 + 7 * 3

U7 = 23


deviendrait :

Code: Select all
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: Select all
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.
User avatar
LauraeAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 78.8%
 
Posts: 1685
Images: 22
Joined: 25 Jun 2010, 00:00
Location: France, La Défense
Gender: Male
Calculator(s):
MyCalcs profile
Class: Professeur, Etudiant, Formateur

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

Unread postby 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: Select all
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
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 53.4%
 
Posts: 42392
Images: 17088
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

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

Unread postby 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: Select all
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
User avatar
ilovetibank
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Level up: 16%
 
Posts: 23
Joined: 04 Jan 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Première STI Electronique

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

Unread postby 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 !
User avatar
kindermoumouteProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 2.6%
 
Posts: 849
Joined: 30 Sep 2009, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ecole d'ingénieur informatique et industriel

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

Unread postby 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#:
User avatar
ilovetibank
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Level up: 16%
 
Posts: 23
Joined: 04 Jan 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Première STI Electronique

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

Unread postby 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.
User avatar
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 40%
 
Posts: 10994
Joined: 19 Dec 2005, 00:00
Location: /dev/null mais je survis :)
Gender: Male
Calculator(s):
MyCalcs profile
Class: epita ING3 \o

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

Unread postby 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.
User avatar
ilovetibank
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Level up: 16%
 
Posts: 23
Joined: 04 Jan 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Première STI Electronique

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

Unread postby ilovetibank » 06 Jan 2011, 23:28

Toujours pas de nouvelles :(
User avatar
ilovetibank
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Level up: 16%
 
Posts: 23
Joined: 04 Jan 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Première STI Electronique

Previous

Return to TI-Basic

Who is online

Users browsing this forum: ClaudeBot [spider] and 9 guests

-
Search
-
Social TI-Planet
-
Featured topics
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 !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1980 utilisateurs:
>1941 invités
>32 membres
>7 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)