Rechercher
Connexion
Chatbox externe
Derniers sujets
Partenaires
TI-Planet | Espace-TI : Forum |
Faire un don à Tout-82...
Où va cet argent ?
Membres donateurs:- Persalteas (10€)
- Wistaro (5€)
- jo2geek (22€)
Les posteurs les plus actifs du mois
Aucun utilisateur |
Le plus léger Papy-Jump.
3 participants
Page 1 sur 1
Le plus léger Papy-Jump.
Salut !
Je viens de réussir à terminer un papy-saute avec des listes. Il tient en seulement 250 octets. Il est aussi plus fluide.
PAPY-JUMP V4
Je viens de réussir à terminer un papy-saute avec des listes. Il tient en seulement 250 octets. Il est aussi plus fluide.
PAPY-JUMP V4
- Code:
:EffEcr
:7->X:1->Y:1->H:8->P:0->S
:Entaléat(1,16,7->L1
:7->L1(8
:Repeat Y=8
:For(A,1,8
:Output(A,L1(A),"=
:End
:If S=4 ou H=1 et X=L1(Y+1
:Then:-H->H:0->S
:End
:S-H->S
:CodeTouche->T
:If non(Y+H
:Then:For(A,-7,-1
:L1(-A->L1(-A+1
:End
:entaléat(1,16->L1(1
:EffEcr:Output(8,15,P
:Y+1->Y
:End
:Output(Y,X," " -------- "1 espace"
:X-(T=24)+(T=26->X
:Y+H->Y
:If X=0:16->X:If X=17:1->X
:Output(Y,X,"O
:End
Dernière édition par RTX7 le Lun 25 Mai 2015 - 23:08, édité 1 fois
Le plus léger Papy-Jump.
Pourquoi pas plus léger ? :
- Code:
ClrHome
DelVar S7->X:1->Y:1->H:8->P
randInt(1,16,7->L1
7->L1(8
Repeat Y=8
For(A,1,8
Output(A,L1(A),"=
End
If S=4 or H=1 and X=L1(Y+1
Then:DelVar S-H->H
End
S-H->S
getKey->T
If not(Y+H
Then:For(A,-7,-1
L1(-A->L1(1-A
End
randInt(1,16->L1(1
ClrHome:Output(8,15,P
Y+1->Y
End
Output(Y,X,"
X-(T=24)+(T=26->X
Y+H->Y
X-16(X=17)+16not(X->X
Output(Y,X,"O
End
Mingerton- ----------------------
- Messages : 251
Points Concours : 103
Productivité : 5
Date d'inscription : 10/10/2013
Localisation : Comté de Kerry, Irlande
Re: Le plus léger Papy-Jump.
Une amélioration du papy saute...
J'ai remarquer que dans un seul cas, la commande "If" peut faire exécuter deux autres commandes.
Example; Si on écrit ce petit prgm :
Je m'en suis servi pour supprimer un "If:Then:End" dans le code d'après.
J'ai aussi optimiser la condition ":If S=4 ou HX=L1(Y+1".
Voilà pour vous
PAPY-JUMP V4,2
221 octets
J'ai remarquer que dans un seul cas, la commande "If" peut faire exécuter deux autres commandes.
Example; Si on écrit ce petit prgm :
- Code:
:1-B
:Input A
:If A=3
:EffVar AA->B
:Disp A,B
Je m'en suis servi pour supprimer un "If:Then:End" dans le code d'après.
J'ai aussi optimiser la condition ":If S=4 ou HX=L1(Y+1".
Voilà pour vous
PAPY-JUMP V4,2
221 octets
- Code:
:EffEcr
:1->Y:1->H:EffVar S8->P
:Entaléat(1,16,8->L1
:L1(1->X
:Repeat Y=8
:For(A,1,8
:Output(A,L1(9-A),"=
:End
:If S=4 ou HX=L1(8-Y
:EffVar S-H->H -------- la touche (-)
:S-H->S
:If non(Y+H:Then
:suite(L1(A+1),A,1,7->L1
:entaléat(1,16->L1(8
:EffEcr:P+1->P
:Y+1->Y
:End
:codeTouche
:Output(Y,X,"
:X-(Rép=24)+(Rép=26->X
:X+16non(X)-16(X=17->X
:Y+H->Y
:Output(Y,X,"O
:End
:P
Dernière édition par RTX7 le Mar 26 Mai 2015 - 23:30, édité 2 fois
Re: Le plus léger Papy-Jump.
Tu as encore quelques octets octets à gagner, que j'ai déjà indiqué plus haut
- Code:
ClrHome
7->X:1->Y:1->H:DelVar S8->P // ici
randInt(1,16,7->L1
7->L1(8
Repeat Y=8
For(A,1,8
Output(A,L1(A),"=
End
If S=4 ou HX=L1(Y+1
DelVar S-H->H
S-H->S
getKey->T
If not(Y+H
Then:For(A,-7,-1
L1(-A->L1(-A+1
End
randInt(1,16->L1(1
ClrHome:P+1->P:Output(8,15,P
Y+1->Y
End
Output(Y,X," // et là
X-(T=24)+(T=26->X
Y+H->Y
X-16(X=17)+16not(X->X // et là aussi
Output(Y,X,"O
End
Mingerton- ----------------------
- Messages : 251
Points Concours : 103
Productivité : 5
Date d'inscription : 10/10/2013
Localisation : Comté de Kerry, Irlande
Re: Le plus léger Papy-Jump.
Sur l'autre Tout82, ld (RTX7) a fait encore plus léger. 220 octets c'est propre :
- Code:
:EffEcr
:1->Y:1->H:EffVar S8->P
:Entaléat(1,16,8->L1
:Rép(1->X
:Repeat Y=8
:For(A,1,8
:Output(A,L1(9-A),"=
:End
:If S=4 ou HX=L1(8-Y
:EffVar S-H->H
:S-H->S
:If non(Y+H:Then
:suite(L1(A+1),A,1,7->L1
:entaléat(1,16->L1(8
:EffEcr:P+1->P
:Y+1->Y
:End
:codeTouche
:Output(Y,X,"
:X-(Rép=24)+(Rép=26->X
:X+16non(X)-16(X=17->X
:Y+H->Y
:Output(Y,X,"O
:End
Mingerton- ----------------------
- Messages : 251
Points Concours : 103
Productivité : 5
Date d'inscription : 10/10/2013
Localisation : Comté de Kerry, Irlande
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
Dim 16 Oct 2022 - 21:11 par Wistaro
» Bonne année 2018!
Ven 2 Nov 2018 - 19:42 par Ti64CLi++
» Lancement du TI-Concours 2017 !
Sam 20 Mai 2017 - 0:27 par Paulo1026
» Chaînes Youtube des membres
Ven 19 Mai 2017 - 22:41 par Wistaro
» cacul du taux d'intêret
Ven 24 Mar 2017 - 21:50 par m@thieu41
» [Projet] Un mario by tout82
Dim 29 Jan 2017 - 14:09 par Wistaro
» Cherche documentation assembleur TI82stat
Mer 25 Jan 2017 - 12:29 par Ti64CLi++
» Probleme Ti-82 Stats fr
Jeu 12 Jan 2017 - 13:56 par Ti64CLi++
» ROM 82 stats.fr
Jeu 15 Déc 2016 - 10:24 par Ti64CLi++