π
<-

Le Temple

Re: Le Temple

Postby Bisam » 12 May 2018, 13:20

loupiot wrote:Le problème défaire (sic) un tableau des scores où on rajoute des pseudos un à un, c'est qu'on a très vite dépasser (sic) les 10 pseudos, et alors l'affichage sera compliqué.

Mais en quoi est-ce plus compliqué d'afficher 10 pseudos que d'afficher 10 scores ???

Par ailleurs, pour un tel affichage, il serait quand même beaucoup plus sympa d'avoir le pseudo ET le score avec...

Encore une fois, vous voyez des problèmes là où il n'y en a pas.

Faisons un résumé de ce qui pourrait être intéressant :
  • il faut une liste des meilleurs scores : j'ai déjà donné une façon pour la tenir à jour
  • il faut tenir en parallèle une liste des identifiants des joueurs ayant obtenu ces meilleurs scores (bien plus facile à mettre à jour qu'une chaîne de caractères puisqu'il suffit de appliquer la même technique que dans la liste des scores)
  • il faut une chaîne de caractères qui enregistre tous les pseudos de tous les joueurs et savoir gérer cette chaîne pour qu'un utilisateur qui revient puisse réutiliser son pseudo sans que cela prenne plus de place dans la chaîne (pour cela, il suffit de faire une recherche de son pseudo dans la chaîne)
  • il faut du coup également une façon de donner un identifiant à chaque joueur... et pour cela, le numéro du premier caractère de son pseudo dans la chaîne fait très bien l'affaire
  • enfin, il faut une routine d'affichage qui permette d'afficher tout cela proprement, le plus joli étant sans doute d'afficher pseudo et score sur une même ligne, l'un à gauche et l'autre à droite

J'espère que cette fois c'est plus clair, et sinon, au besoin, je donnerai un exemple.
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

Re: Le Temple

Postby FjFk » 12 May 2018, 13:30

ok, alors, comment faire concrètement ?
Image
Tu veux découvrir mon projet ClaudeBot [spider] ?
Leviathan
User avatar
FjFk
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 83%
 
Posts: 282
Images: 18
Joined: 01 May 2018, 15:59
Location: Lune
Gender: Male
Calculator(s):
MyCalcs profile
Class: Inconnu

Re: Le Temple

Postby loupiot » 12 May 2018, 14:32

Le découpage de la liste qui indique la taille des pseudos était le pire possible.
Tu veux 5 pseudos avec le score en dessous (même si comme Bisam je trouve plus joli le score à droite):
Code: Select all
EffÉcran
1→A
For(N,1,5
⌊J1(N→B
Output(2N-1,1,sousch(Chn1,A,B
Output(2N,1,⌊S1(N
B+A→A
End


Pour la chaîne avec les pseudos (la méthode ne change pas donc le script est potentiellement améliorable, mais il est beaucoup plus lisible et une erreur qui se produisait a été corrigée) :
-S est le score du joueur à la fi de la partie
-⌊S1 est la liste qui contient les 5 records
-C est la position du score du joueur dans la liste des records
Code: Select all
0→C
For(A,5,1,­1
If S>⌊S1(A
A→C
End
"test si le score bat un record. Renvoit sa position dans le top 5
If C≠0
Then
"→Chn0
Repeat longueur(Chn0)<21 et longueur(Chn0)>0
Input "PSEUDO : ",Chn0
End
longueur(Chn0→X
1→B
For(A,1,C-1
B+⌊J1(A→B
End
"B donne la position dans Chn1 à laquelle le pseudo va être insere
If C=1
Chn0+sousch(Chn1,B,longueur(Chn1)+1-B-⌊J1(5→Chn1
If C=5
sousch(Chn1,1,B-1)+Chn0→Chn1
If C≠1 et C≠5
sousch(Chn1,1,B-1)+Chn0+sousch(Chn1,B,longueur(Chn1)+1-B-⌊J1(5→Chn1
"oblige de faire du cas par cas, car sousch(Chn1,1,0) cree une erreur
For(A,C,5
⌊J1(A→P
X→⌊J1(A
P→X
End
"le nombre de caractères du pseudo saisi est rentre dans la position qu'il tient au tableau, et les elements en dessous ont ete decale
augmenter(⌊S1,{S→⌊S1
"on ajoute le score dans la liste des records
TriD(⌊S1
5→dim(⌊S1
"enleve le dernier element
End
User avatar
loupiotProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 1.9%
 
Posts: 158
Images: 4
Joined: 30 Oct 2015, 13:23
Gender: Male
Calculator(s):
MyCalcs profile
Class: 2A ENS Lyon maths

Re: Le Temple

Postby FjFk » 12 May 2018, 14:55

et je fait ça 5 fois ou c'est bon ?
et tu pourrais réussir à mettre le score à droite du pseudo ? car j'ai fait pas mal de tests et ça marchais pas ...
et A est quoi ?
Image
Tu veux découvrir mon projet ClaudeBot [spider] ?
Leviathan
User avatar
FjFk
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 83%
 
Posts: 282
Images: 18
Joined: 01 May 2018, 15:59
Location: Lune
Gender: Male
Calculator(s):
MyCalcs profile
Class: Inconnu

Re: Le Temple

Postby loupiot » 12 May 2018, 15:01

A c'est pas grand chose, il est juste là pour faire des boucles.
par exemple si t'as
Code: Select all
For A(1,5
...
End

A va prendre toutes les valeurs entières entre 1 et 5 inclus.
Si tu veux le score à droite, alors t'as :
Code: Select all
EffÉcran
1→A
For(N,1,5
⌊J1(N→B
Output(2N-1,1,sousch(Chn1,A,B
Output(2N-1,1,⌊S1(N
B+A→A
End

Dans ce script, A est la position du premier caractère du mot dans la chaîne.
Malheureusement tu devras recopier 5 fois ce code, pas de possibilité de créer des fonctions en basic ... Tu devras changer les noms des listes et chaînes, Chn1 deviendra Chn2 etc ... Oublie pas d'initialiser les listes et les chaînes. La méthode pour le faire est sur ton ancien topic
User avatar
loupiotProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 1.9%
 
Posts: 158
Images: 4
Joined: 30 Oct 2015, 13:23
Gender: Male
Calculator(s):
MyCalcs profile
Class: 2A ENS Lyon maths

Re: Le Temple

Postby FjFk » 12 May 2018, 15:05

finalement, j'utilise combien de chaines ?
Image
Tu veux découvrir mon projet ClaudeBot [spider] ?
Leviathan
User avatar
FjFk
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 83%
 
Posts: 282
Images: 18
Joined: 01 May 2018, 15:59
Location: Lune
Gender: Male
Calculator(s):
MyCalcs profile
Class: Inconnu

Re: Le Temple

Postby Bisam » 12 May 2018, 15:10

loupiot wrote:pas de possibilité de créer des fonctions en basic

En fait, ce n'est pas tout-à-fait exact.
Puisque les variables utilisées sont globales à tous les programmes et que la variable Ans peut être utilisée pour passer un argument à un programme ou comme valeur de retour, il est envisageable de faire des sortes de fonctions en TI-Basic.
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

Re: Le Temple

Postby loupiot » 12 May 2018, 16:57

ha oui bien vu :p
petite erreur dans mon message précédant, si tu veux le score à droite il y a ce script (rien en change à part la position du score
Code: Select all
EffÉcran
1→A
For(N,1,5
⌊J1(N→B
Output(2N-1,1,sousch(Chn1,A,B
Output(2N-1,22,⌊S1(N
B+A→A
End

Cette méthode te fera utiliser 6 chaînes, dont 5 permanent (tu peux garder Chn0 qui te sert de "pivot"). C'est dommage, parce que ça oblige à recopier pleins de fois le script avec juste une variable de modifiée ...
User avatar
loupiotProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 1.9%
 
Posts: 158
Images: 4
Joined: 30 Oct 2015, 13:23
Gender: Male
Calculator(s):
MyCalcs profile
Class: 2A ENS Lyon maths

Re: Le Temple

Postby FjFk » 12 May 2018, 17:08

si tu utilise 5 chaines, je peux le faire tout seul sans prendre autant de lignes.
ce que je voulais était d'utiliser que une chaine pour tout les pseudos, car j'ai 2 jeux et que je ne eux pas bouffer toutes les chaines de l'utilisateur.
dsl.
Image
Tu veux découvrir mon projet ClaudeBot [spider] ?
Leviathan
User avatar
FjFk
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 83%
 
Posts: 282
Images: 18
Joined: 01 May 2018, 15:59
Location: Lune
Gender: Male
Calculator(s):
MyCalcs profile
Class: Inconnu

Re: Le Temple

Postby Bisam » 12 May 2018, 17:23

Non, il y a seulement une chaîne qui sert à stocker et l'autre qui est "temporaire".
Je pense qu'il parlait de 5 chaînes si tu veux faire 5 jeux...
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

PreviousNext

Return to TI-Basic

Who is online

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

-
Search
-
Social TI-Planet
-
Featured topics
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
-
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.
2005 utilisateurs:
>1995 invités
>4 membres
>6 robots
Record simultané (sur 6 mois):
32248 utilisateurs (le 01/09/2025)
-
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)