Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.

Forum Casio - Autres questions


Index du Forum » Autres questions » Affichage de texte
Thiladon Hors ligne Membre Points: 150 Défis: 1 Message

Affichage de texte

Posté le 05/12/2014 10:57

Hey, salut la communauté, je suis de retour o/

Alors voilà, je me suis remis a programmer un petit peu ces temps-ci et je commence a m'attaquer aux choses que je ne toucher pas encore avant, donc la je m'amuse avec les STR pour un de mes prochains jeux ( Que je dévoilerais plus tard )
Et donc voici mon problème :

- Je m'inspire d'une fonction programmé par NeoTux : Arkenstone
Et donc, j'essaye de reprendre le principe de son affichage de texte, mais en le modifiant, en effet, lui affiche un texte de gauche à droite, quand moi, j'essaye de faire apparaitre le texte par la gauche ET la droite en même temps, sauf que je n'arrive pas encore a positionner correctement la partie de droite et je plante la dessus :c

Pourriez vous m'aider ?

Si vous avez besoin de code ou si vous voulais voir ce que j'ai commencer a faire, je le posterais plus tard, j'ai juste rédiger vite fait ce post en cours pour qu'il soit au moins fait et aussi pour demander déjà un bout d'aide
En ce qui concerne Neo', je l'ai déjà mp pour lui demander les droits d'auteur, mais j'ai un ancien mp de lui qui me disait que j'avais le droit de reprendre ses sources donc ce n'est pas vraiment un problème


Dark storm Hors ligne Labélisateur Points: 11579 Défis: 176 Message

Citer : Posté le 05/12/2014 13:19 | #


Avec StrRight, t'as essayé ? Cf la liste des fonctions Basic Casio
Finir est souvent bien plus difficile que commencer. — Jack Beauregard
Thiladon Hors ligne Membre Points: 150 Défis: 1 Message

Citer : Posté le 05/12/2014 13:38 | #


Oui oui j'ai essayé mais le problème c'est que j'arrive pas a positionné correctement le texte
Btl Hors ligne Ancien modérateur Points: 3879 Défis: 107 Message

Citer : Posté le 05/12/2014 13:52 | #


Je vais essayer de t'expliquer comment je conçois le problème :

Un Str 1 contenant ton texte
Un Str 2 de la même taille contenant des espaces

Tu fais une boucle (For, while, Do...) Et a chaque itération tu prends :
la partie droite du STR 2 jusqu'a l'itération en cours + le cararactère du Str 1 à l'index de l'itération + le reste du STR 2 -1 -> STR 2
La partie gauche du STR 2 jusqu'a STRLEN - l'itération en cours + le cararactère du Str 1 à l'index de l'itération + le reste du STR 2 -1 -> STR 2

Et tu affiches le STR 2 à chaque itération.

Après il y a surement moyen d'optimiser mais l'idée est la.
Un excellent tuto video qui vous explique comment transférer des fichiers de l'ordinateur vers la calculatrice et vice versa ma chaine youtube
mes jeux
mes jeux

Jouez à 6 sur une seule calto : Curve Fever
Un die and retry qui vous fera bieeeen rager Test Andropov
un très bon sokoban
le seul vrai jeu de foot en basic : FIFA 12
Ca c'est ce que j'appelle un jeu de reflexion jewel master
Qui vaincra l'intelligence artificielle de cet othello
Le célèbre pacman
Et tant d'autres BTL's games

Le jeu du mois de Novembre et award du jeu le plus dur de l'année 2013 MultiTask, testez-le
Thiladon Hors ligne Membre Points: 150 Défis: 1 Message

Citer : Posté le 05/12/2014 13:55 | #


Je vais déjà essayer d'appliquer ça

Ajouté le 05/12/2014 à 14:20 :
Bon alors, j'ai beau essayé, j'arrive pas a concevoir ça en code, pour le moment, je fait sans la boucle, pour voir, mais ça donne pas l'effet escompter
Totoyo Hors ligne Membre d'honneur Points: 16076 Défis: 102 Message
Thiladon Hors ligne Membre Points: 150 Défis: 1 Message

Citer : Posté le 05/12/2014 18:02 | #


Totoyo, je te met ça ce soir ou demain quand j'aurais le temps, la je passe en trombe vite fait

Ajouté le 07/12/2014 à 13:16 :
Et voici le code promis, alors pour faire court, j'ai repris une partie de celui d'arkenstone ( La partie qui calcule la position X,Y du texte ) et j'ai ajouté la mienne, tout est détaillé dans le code ( Mais j'ai encore un bug, si la taille du STR est impair, ça bug :c )


[brown]Cls[/brown]
[gray]"Ceci est un Str pair+/"[/gray]→Str [maroon]1[/maroon]
[green]'Les espaces sont aussi compter, + permet de dire que c'est la fin d'une "partie" et / permet de définir la fin du texte[/green]
0→I~Z
1→X
0→Y
[green]'Calcul de la coordonnée J[/green]
[b][blue]Do[/blue][/b]
StrSrc(Str [maroon]1[/maroon],[gray]"+"[/gray])
Ans⇒StrRotate(Str [maroon]1[/maroon],Ans)→Str [maroon]1[/maroon]
Ans⇒J+1→J
[b][blue]LpWhile[/blue][/b] StrSrc(Str [maroon]1[/maroon],[gray]"/"[/gray])≠1
StrRotate(Str [maroon]1[/maroon],[maroon]1[/maroon])→Str [maroon]1[/maroon]
12+Int (.5(42-7J→J
[b][blue]Do[/blue][/b]
StrSrc(Str [maroon]1[/maroon],[gray]"+"[/gray])→I
StrLeft(Str [maroon]1[/maroon],I-1)→Str [maroon]2[/maroon]
[green]'Calcul de la coordonnée L en Fonction de I[/green]
Int (0.5(124-3.75I→L
[green]'Ma partie :[/green]
[green]'On prend les X lettres de la gauche[/green]
StrLeft(Str [maroon]2[/maroon],X)→Str [maroon]3[/maroon]
[green]'On ajoute les espaces[/green]
[b][blue]For[/blue][/b] [maroon]1[/maroon]→M [b][blue]To[/blue][/b] StrLen(Str [maroon]2[/maroon])-2X
Str [maroon]3[/maroon]+[gray]" "[/gray]→Str [maroon]3[/maroon]
[b][blue]Next[/blue][/b]
[green]'On y ajoute ensuite les X lettres de la droites[/green]
Str [maroon]3[/maroon]+StrRight(Str [maroon]2[/maroon],X)→Str [maroon]3[/maroon]
[b][brown]Text[/brown][/b] J,L,Str [maroon]3[/maroon]
Y+1→Y
X+1→X
[b][blue]LpWhile[/blue][/b] Y≠Int (StrLen(Str [maroon]2[/maroon])/2)

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2023 | Il y a 64 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd