 Le Forum de TI-BANK.fr Le forum de la banque de programmes pour calculatrices graphiques Texas Instruments (aide débutants, résolution problèmes...). |
| | Aller à la page : 1, 2  | | Auteur | Message |
|---|
charognard Vétéran


   Age : 41 Inscrit le : 18 Oct 2007 Messages : 394 Localisation : indre et loire Calculatrice : TI NSPIRE CAS, CANON X07, HP48GX, HP11C, SHARP PC1262, PC1360, PC1246, PC1600, PC1500, CASIO FX790P Classe : sans
Impureté:
   (47/450) Dernière note en maths: 11/20
| Sujet: benchmark ti Lun 5 Nov - 17:28 | |
| à des fins de bench j'ai fais des petits programmes (plus de dix) sur diverses Plates formes mais pas TI.
je cherche donc (ayant revendu ma 89) que quelqu'un m'adapte ces petits dev sur 89, voyage et autre et me donne les temps passés ou les résultat.
Programme numéro 1 précision des calculs 10 A=1/3 :B=0 :C=0 :DIM D$(0)*30 20 D$(0)=STR$ A 30 A=1/3-VAL D$(0) 40 A=A*10 50 B=B+1 60 IF INT A <> A GOTO 40 70 A=VAL D$(0) 80 A=A*10 90 C=C+1 100 IF INT A <>A THEN 80 110 PRINT « Calcul interne : » 120 PRINT B ; « chiffres (» ;B/2+2 ; « bits)» 130 PRINT « Calcul stocké : » 140 PRINT C ; « chiffres (» ;C/2+2 ; « bits)»
Programme numéro 2 profondeur de pile gosub et for next 10 ON ERROR GOTO 50 20 B=0 30 B=B+1 40 GOSUB 30 50 PRINT « PILE GOSUB :» ;B 60 ON ERROR GOTO 110 70 B=0 80 B=B+1 90 FOR A=1 TO 2 100 GOTO 80 110 PRINT « PILE FOR … NEXT » ;B
Programme numéro 3 Taille maxi variables alpha-numérique 10 A=0 20 B$= « » 30 B$=B$+ « * » 40 A=A+1 50 IF LEN B$=A THEN GOTO 30 60 PRINT « Longueur maxi : » ; A-1
passons au test de rapidité de calcul maintenant Test 1 Log, et logique 10 FOR A=1 TO 1000 20 B=255 30 H=B AND 240 40 GOSUB 100 50 L=B AND 15 60 NEXT A 70 PRINT "FIN" 80 END 100 D=0:IF H THEN LET D=LN H/LN 2 110 IF INT D=D THEN LET H=INT R+2^(INT D-4):RETURN 120 R=R+2^(INT D-4) 130 E=2^INT D:H=H-E 140 GOSUB 100 150 RETURN
Test 2 Graphique 5 WAIT 0 10 CLS 20 PRINT "SCORE:" 30 LINE (69,0)-(69,30) 40 LINE (145,0)-(145,30) 50 LINE (70,0)-(144,3),BF 60 LINE (70,6)-(144,9),BF 70 SC=0 80 BX=106 90 Y=10:OX=0:OY=Y:RX=-3:RY=2:X=109 100 LINE (70,30)-(144,30) 110 X=X+RX:Y=Y+RY 120 IF X<70 OR X>142 BEEP 1,10,10:RX=-RX:X=X+2*RX 130 IF Y>=30 OR Y=-2 THEN BEEP 1,20,10:RY=-RY:Y=OY+RY 150 IF POINT (X,Y)=0 THEN 200 160 BEEP 1,10,10 170 SC=SC+5: IF SC>200 THEN PRINT "FIN": END 180 LINE (X,Y)-(X+2,Y+1),R,B 190 Y=Y-RY:RY=-RY 200 LINE (OX,OY)-(OX+2,OY+1),R,B 210 LINE (X,Y)-(X+2,Y+1),B 220 OX=X:OY=Y 230 GOTO 110
info dans l'instruction line R eteint les pixel, B (box) et BR (box plein)
Limite : optimisation totalement permise dans les limite de rester en language interprété.
pour exemple une adaptation sur HP. « ERASE { # 0d # 0d } PVIEW PICT { # 0d # 0d } "SCORE:0" 1 GROB REPL { # 49d # 0d } { # 49d # 30d } LINE { # 125d # 0d } { # 125d # 30d } LINE { # 50d # 0d } { # 124d # 1d } BOX { # 50d # 2d } { # 124d # 3d } BOX { # 50d # 6d } { # 124d # 7d } BOX { # 50d # 8d } { # 124d # 9d } BOX 0 # 86d # 10d DUP DUP # 0d 2 -3 # 89d -> sc bx y yb oy ox ry rx x « { # 50d # 30d } { # 124d # 30d } LINE DO x B->R rx + R->B 'x' STO y B->R ry + DUP R->B 'y' STO 'yb' STO IF x B->R 50 < x BR 124 > OR THEN 800 .05 BEEP rx NEG 'rx' STO x B->R 2 rx * + R->B 'x' STO END IF y B->R 30 >= yb -2 == OR THEN 300 .05 BEEP ry NEG 'ry' STO oy B->R ry + R->B 'y' STO END IF x y 2 LIST PIX? THEN 300 .1 BEEP sc 5 + 'sc' STO PICT { # 22d # 0d } sc 1 GROB REPL x y 2 LIST x 2 + y 2 LIST x y 1 + 2 LIST x 2 + y 1 + 2 LIST TLINE TLINE y B->R ry - R->B 'y' STO ry NEG 'ry' STO END ox oy 2 LIST ox 2 + oy 2 LIST ox oy 1 + 2 LIST ox 2 + oy 1 + 2 LIST x y 2 LIST x 2 + y 1 + 2 LIST BOX TLINE TLINE x 'ox' STO y 'oy' STO UNTIL 'sc>200' END » »
le reste à suivre quand j'aurais déjà quelques résultat |
|  | | tama Animateur


   Age : 17 Inscrit le : 19 Déc 2005 Messages : 9409 Localisation : quelque part en France... Calculatrice : TI-84+, TI89 tita HW3, TI89 tita HW4 (eh oui, 3 TI :#geek#:) Classe : Terminale S spé maths
Impureté:
   (-9/500) Dernière note en maths: 13/20
| Sujet: Re: benchmark ti Lun 5 Nov - 17:47 | |
| C'est quel langage ça ? du basic ? _________________
<embed src="http://www.mirari.fr/OVRh.swf" width="550" height="150" align="middle" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" allowscriptAccess="always"></embed> |
|  | | charognard Vétéran


   Age : 41 Inscrit le : 18 Oct 2007 Messages : 394 Localisation : indre et loire Calculatrice : TI NSPIRE CAS, CANON X07, HP48GX, HP11C, SHARP PC1262, PC1360, PC1246, PC1600, PC1500, CASIO FX790P Classe : sans
Impureté:
   (47/450) Dernière note en maths: 11/20
| Sujet: Re: benchmark ti Lun 5 Nov - 17:51 | |
| | tama a écrit: | C'est quel langage ça ? du basic ? |
le premier c'est du basic. le deuxième c'est du RPL (bref de l'HP), je sais ça fout les jetons la première fois  |
|  | | Mic Administrateur


   Age : 24 Inscrit le : 07 Sep 2004 Messages : 9910 Localisation : Orléans Calculatrice : Voyage 200 & TI-Nspire CAS Classe : Prof de Maths
Impureté:
   (56/450) Dernière note en maths: -/20
| |  | | charognard Vétéran


   Age : 41 Inscrit le : 18 Oct 2007 Messages : 394 Localisation : indre et loire Calculatrice : TI NSPIRE CAS, CANON X07, HP48GX, HP11C, SHARP PC1262, PC1360, PC1246, PC1600, PC1500, CASIO FX790P Classe : sans
Impureté:
   (47/450) Dernière note en maths: 11/20
| Sujet: Re: benchmark ti Lun 5 Nov - 19:21 | |
| | Mic a écrit: | Uhm je comprends pas trop la syntaxe HP avec le $. Sinon il existe des programmes de bench pour TI. |
le $ ????, veux tu parler du # (le mode base) en vérité les nombres sont stockés en plusieur mode #10d n'est pas égale à 10 et tu passes d'un systeme à l'autre par R>B ou l'inverse vu que je veux comparer avec plein d'autre ordi de poche les bench spécial TI ne me conviennent pas .... normalement |
|  | | tama Animateur


   Age : 17 Inscrit le : 19 Déc 2005 Messages : 9409 Localisation : quelque part en France... Calculatrice : TI-84+, TI89 tita HW3, TI89 tita HW4 (eh oui, 3 TI :#geek#:) Classe : Terminale S spé maths
Impureté:
   (-9/500) Dernière note en maths: 13/20
| Sujet: Re: benchmark ti Lun 5 Nov - 19:35 | |
| Prenons un code : clui là par exemple :
| Citation: | Test 1 Log, et logique 10 FOR A=1 TO 1000 20 B=255 30 H=B AND 240 40 GOSUB 100 50 L=B AND 15 60 NEXT A 70 PRINT "FIN" 80 END 100 D=0:IF H THEN LET D=LN H/LN 2 110 IF INT D=D THEN LET H=INT R+2^(INT D-4):RETURN 120 R=R+2^(INT D-4) 130 E=2^INT D:H=H-E 140 GOSUB 100 150 RETURN
|
C'est pas possible que tu rajoutes des commentaires pour expliquer ? _________________
<embed src="http://www.mirari.fr/OVRh.swf" width="550" height="150" align="middle" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" allowscriptAccess="always"></embed> |
|  | | charognard Vétéran


   Age : 41 Inscrit le : 18 Oct 2007 Messages : 394 Localisation : indre et loire Calculatrice : TI NSPIRE CAS, CANON X07, HP48GX, HP11C, SHARP PC1262, PC1360, PC1246, PC1600, PC1500, CASIO FX790P Classe : sans
Impureté:
   (47/450) Dernière note en maths: 11/20
| Sujet: Re: benchmark ti Lun 5 Nov - 19:50 | |
| | tama a écrit: | Prenons un code : clui là par exemple :
C'est pas possible que tu rajoutes des commentaires pour expliquer ? |
c'est simplement des instructions de base BASIC. j'ai utilisé dans c'est programmes que des instructions standards
but du programme un simple convertisseur décimal --> hex utilisant des formules log pour arriver à ces fins. et me servant de bench sur diverses caltoches bref on converti 1000 fois la valeur deci 255 en FF et on mesure le temps |
|  | | tama Animateur


   Age : 17 Inscrit le : 19 Déc 2005 Messages : 9409 Localisation : quelque part en France... Calculatrice : TI-84+, TI89 tita HW3, TI89 tita HW4 (eh oui, 3 TI :#geek#:) Classe : Terminale S spé maths
Impureté:
   (-9/500) Dernière note en maths: 13/20
| Sujet: Re: benchmark ti Lun 5 Nov - 20:01 | |
| oui mais basic!=TI-Basic tu peux pas expliquer ligne par ligne ? _________________
<embed src="http://www.mirari.fr/OVRh.swf" width="550" height="150" align="middle" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" allowscriptAccess="always"></embed> |
|  | | charognard Vétéran


   Age : 41 Inscrit le : 18 Oct 2007 Messages : 394 Localisation : indre et loire Calculatrice : TI NSPIRE CAS, CANON X07, HP48GX, HP11C, SHARP PC1262, PC1360, PC1246, PC1600, PC1500, CASIO FX790P Classe : sans
Impureté:
   (47/450) Dernière note en maths: 11/20
| Sujet: Re: benchmark ti Lun 5 Nov - 21:09 | |
| 10 FOR A=1 TO 1000 ;debut de la boucle for next 20 B=255 ;255-->B 30 H=B AND 240 ;ET binaire entre B et 240 on stocke le tout dans H 40 GOSUB 100 ;Allez au sous programme ligne 100 50 L=B AND 15 ;ET binaire entre B et 15 on stocke tout dans L 60 NEXT A ;fin de la boucle for next 70 PRINT "FIN" ;affichage de FIN 80 END ;fin du programme 100 D=0:IF H THEN LET D=LN H/LN 2 ; 0-->D si H<>0 alors D=LN H/LN2 110 IF INT D=D THEN LET H=INT R+2^(INT D-4):RETURN ;condition de sortie de la boucle récursive 120 R=R+2^(INT D-4) ;calcul de R 130 E=2^INT D:H=H-E ;calcul de E et H 140 GOSUB 100 ;appel récursif 150 RETURN ;Retour du sous programme
voilà |
|  | | tama Animateur


   Age : 17 Inscrit le : 19 Déc 2005 Messages : 9409 Localisation : quelque part en France... Calculatrice : TI-84+, TI89 tita HW3, TI89 tita HW4 (eh oui, 3 TI :#geek#:) Classe : Terminale S spé maths
Impureté:
   (-9/500) Dernière note en maths: 13/20
| Sujet: Re: benchmark ti Lun 5 Nov - 21:27 | |
| | Code: | prgmMAIN For A,1,1000 255->B B and 240->H prgmSUB B and 15->L End Disp "FIN" Return
prgmSUB 0->D If D!=0 ln(H)/Ln(2)->D If not(fPart(D Then int(R+2^(int(D-4->H Return End R+2^(int(D-4->R 2^(int(D->E H-E->H prgmSUB Return
|
par contre je suis pas sûr de la traduction... _________________
<embed src="http://www.mirari.fr/OVRh.swf" width="550" height="150" align="middle" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" allowscriptAccess="always"></embed> |
|  | | charognard Vétéran


   Age : 41 Inscrit le : 18 Oct 2007 Messages : 394 Localisation : indre et loire Calculatrice : TI NSPIRE CAS, CANON X07, HP48GX, HP11C, SHARP PC1262, PC1360, PC1246, PC1600, PC1500, CASIO FX790P Classe : sans
Impureté:
   (47/450) Dernière note en maths: 11/20
| Sujet: Re: benchmark ti Lun 5 Nov - 21:51 | |
| prgmMAIN For A,1,1000 255->B B and 240->H ;es ce un And binaire, ça devrait donner 240 normalement et pas 1 prgmSUB B and 15->L End Disp "FIN" Return
prgmSUB 0->D If H ln(H)/Ln(2)->D If not(fPart(D Then int(R)+2^(int(D)-4->H Return End R+2^(int(D)-4->R 2^(int (D)->E H-E->H prgmSUB Return
voilà ça devrait etre bon maintenant il me faudrait le temps passé |
|  | | charognard Vétéran


   Age : 41 Inscrit le : 18 Oct 2007 Messages : 394 Localisation : indre et loire Calculatrice : TI NSPIRE CAS, CANON X07, HP48GX, HP11C, SHARP PC1262, PC1360, PC1246, PC1600, PC1500, CASIO FX790P Classe : sans
Impureté:
   (47/450) Dernière note en maths: 11/20
| Sujet: Re: benchmark ti Lun 5 Nov - 21:57 | |
| | à venir l'explication du test graphique qui est une sorte de casse brique sans intervantion de personne |
|  | | tama Animateur


   Age : 17 Inscrit le : 19 Déc 2005 Messages : 9409 Localisation : quelque part en France... Calculatrice : TI-84+, TI89 tita HW3, TI89 tita HW4 (eh oui, 3 TI :#geek#:) Classe : Terminale S spé maths
Impureté:
   (-9/500) Dernière note en maths: 13/20
| Sujet: Re: benchmark ti Lun 5 Nov - 22:12 | |
| ok. pour le and je sais pas si c'est un and binaire...and binaire -> retourne uniquement 0 et 1 ? _________________
<embed src="http://www.mirari.fr/OVRh.swf" width="550" height="150" align="middle" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" allowscriptAccess="always"></embed> |
|  | | charognard Vétéran


   Age : 41 Inscrit le : 18 Oct 2007 Messages : 394 Localisation : indre et loire Calculatrice : TI NSPIRE CAS, CANON X07, HP48GX, HP11C, SHARP PC1262, PC1360, PC1246, PC1600, PC1500, CASIO FX790P Classe : sans
Impureté:
   (47/450) Dernière note en maths: 11/20
| Sujet: Re: benchmark ti Lun 5 Nov - 22:31 | |
| | tama a écrit: | ok. pour le and je sais pas si c'est un and binaire...and binaire -> retourne uniquement 0 et 1 ? |
non le AND logique retourne que 0 ou 1 (ou -1 sous certain language) le AND binaire retourne le AND bit par bit. par exemple 241 (11110001) AND 63 (111111) retourne 1 en logique (les deux expression sont vrai) et 241 (11110001) AND 63 (111111) retourne 49 (110001) en binaire
suivant les language les deux peuvent etre sous une seule et unique commande ou deux.
par exemple en RPL (sous HP) 241 63 AND retourne 1 et #241d #63d AND retourne #49d
dans le test il me faut un AND binaire
de plus dans la ligne If H certain languages n'acceptent pas cette syntaxe il faut remplacer par if H<>0 |
|  | | tama Animateur


   Age : 17 Inscrit le : 19 Déc 2005 Messages : 9409 Localisation : quelque part en France... Calculatrice : TI-84+, TI89 tita HW3, TI89 tita HW4 (eh oui, 3 TI :#geek#:) Classe : Terminale S spé maths
Impureté:
   (-9/500) Dernière note en maths: 13/20
| Sujet: Re: benchmark ti Lun 5 Nov - 23:16 | |
| dans ce cas c'est un and logique _________________
<embed src="http://www.mirari.fr/OVRh.swf" width="550" height="150" align="middle" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" allowscriptAccess="always"></embed> |
|  | | |
| Page 1 sur 2 | Aller à la page : 1, 2  |
| | Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| | |
| |
|