Posté le 09/05/2014 11:57
Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 246 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
Citer : Posté le 10/05/2014 13:44 | #
J'ai quand même trouvé ça assez compliqué ton code sachant que tu voulais seulement générer le fait d'avoir une chance sur 1000 d'avoir un légendaire et un petit compteur (je dois être en retard ou alors tu as voulu rajouter des trucs)
Citer : Posté le 10/05/2014 13:58 | #
et bien je veut un % de chance de légendaire,Jaune, bleu et blanc.
Un compteur de ce drop + un compteur de monstre tue ( de fois ou l'ont a appuis sur exe )
et aussi et surtout il faut appuyer et relacer exe, si l'on reste enfoncer cela ne marche pas
j'ai encore deux trois truc a faire pour que mon programme soit entièrement fini :
- un système de sauvegarde, au lieu de 0->A~G, Un If en entrée qui demande si on veut continue la sauvegarde ou non.
- au bout de 1000 Monstre, redémarrer le compteur a zéro avec un petit message, vous avez fini la faille ou un truc comme sa.
- je vaudrait faire une animation toute Basic pour le légendaire mais sa sa seras en dernier 8)
Mais déjà le programme est bien avancée
Citer : Posté le 10/05/2014 15:05 | #
Existe-t-il une fonction "continue" en Basic ? (Pour revenir au début de la boucle)
Car sinon il y a moyen de faire encore plus efficace comme code (j'ai changé mon post, mais avec des Lbl en attendant, bien que j'ai un doute que l'on ai pas d'erreur du fait du Goto dans un If)
Par contre, tu veux qu'on t'aide pour ce que tu dois encore faire ou tu le dis juste comme ça ?
Citer : Posté le 10/05/2014 15:10 | #
Oui, Next
Ça fonctionne très bien après =>.
Ou disons, WhileEnd.
Citer : Posté le 10/05/2014 15:25 | #
Pou l'instant ça va, je pense que je vais essayer tout seul et si je n'y arrive pas je demanderais comme d'habitude.
après sa ne me dérange pas que tu édite ton post je regarde toujours
Citer : Posté le 10/05/2014 17:01 | #
Oui, Next
Ça fonctionne très bien après =>.
Ou disons, WhileEnd.
Et ça mercherai de faire If ...:Then WhileEnd:IfEnd ?
Citer : Posté le 10/05/2014 17:01 | #
Oui.
Citer : Posté le 10/05/2014 17:06 | #
Ok. Merci. (J'ai modifié mon post du coup, comme ça il utilise plus de Lbl/Goto )
Citer : Posté le 12/05/2014 11:42 | #
J'ai un petit problème ( comme toujours .. )
J’ai fais :
If D=1000
Then H+1→H ( H est le conteur de faille, nombre de fois que l'ont a fais 1000 monstre en fait )
0→D
Locate 18,1,H
IfEnd
Le code en soit marche bien,
par contre sur la calculatrice il y a :
Monstre 0000
Et par la suite
Monstre 1000 ( pour 1 )
j'ai essayé de trouver une commande clean pour Locate mais je ne trouve pas
Citer : Posté le 12/05/2014 11:43 | #
Tu n'as pas juste oublié d'effacer des 0 derrière ?
Il n'y a aucune raison que la calculatrice t'écrive 1 sur quatre chiffres.
Ajouté le 12/05/2014 à 11:44 :
Pour effacer le Locate:
ou simplement
Citer : Posté le 12/05/2014 11:48 | #
Je m'excuse je me suis mal exprimer 8)
enfet c'est D qui bug, il affiche Quatre 0 pour les mille monstres, cela donne:
Monstre 1000 1 ( pour 1 monstre )
Monstre 2000 1 ( pour 2 monstres )
Monstre 1250 1 ( pour 125 monstres )
Etc
...
H marche très bien
EDIT
Ducoup tu m'as aidé :
Then H+1→H
0→D
Locate 13,1," "
Locate 18,1,H
IfEnd
merci beaucoup
Citer : Posté le 12/05/2014 12:06 | #
Si j'ai bien compris ce que tu veux, Essaye ça :
Citer : Posté le 12/05/2014 12:09 | #
Je ne comprend pas ton code Cartix ..
Citer : Posté le 12/05/2014 12:25 | #
log D, c'est le nombre de chiffres nécessaires pour écrire D. Donc Int (log D), c'en est la valeur entière. Or par exemple:
donc
Or on veut 3 chiffres, donc on ajoute 1 au tout.
Enfin on retranche le tout à 18, pour que le texte s'écrive juste à gauche de la colonne 18.
Ce code présente néanmoins un problème, c'est si log H est entier. Dans ce cas, il ne faut pas l'augmenter. Je te propose donc:
Ça peut paraître compliqué, mais en fait je ne retranche 1 que si le log n'est pas entier.
Citer : Posté le 12/05/2014 12:35 | #
Je comprend mais quand je le rentre dans ma calculette ça fais des truc bizarre alors je vais garder mon petit:
Locate 18,1,H
De plus je trouve que sa rend le code plus compliquai non ?
Par la suite de cette ligne de code, je voudrait afficher un message du style " faille 1 terminé "
Le tuto est complet, mais je n'est pas trouvé ( ou mal cherché.. ) pour tout clean l’écran → afficher le message → retrouver mon écran de base.
Je demande beaucoup je suis vraiment désoler
Citer : Posté le 12/05/2014 12:38 | #
Si tu effaces l'écran, tu ne risques pas de retrouver l'écran d'origine, le texte est perdu.
Si tu veux le récupérer, il faut le réécrire.
Citer : Posté le 12/05/2014 12:46 | #
Ça peut paraître compliqué, mais en fait je ne retranche 1 que si le log n'est pas entier.
Bien vu, je n'y avais pas pensé. Par contre, il n'existe une fonction genre ceil ?
Citer : Posté le 12/05/2014 12:55 | #
Si je fais un sous-programme, es que c'est rentable ?
Faille:
"Bravo blabla "◢
Return
Une chose comme sa, la je n'est pas testé
Citer : Posté le 12/05/2014 15:24 | #
Pour ton exemple, non, puisque tu remplace juste une ligne par un autre. par contre, si c'est pour afficher tout un tas d'infos, oui, c'est rentable car tu remplace une dizaine de lignes par une seule.
Ca dépend aussi du nombre de fois de l'appel du sous-programme : si tu l'appelle qu'une seule fois, c'est inutile
Citer : Posté le 12/05/2014 17:54 | #
J'ai eux une heure d’italien tout t'as l'heure alors.. 8)
voici mon programme avec la fonction de " faille "
Programme Principale
0->A~H [i][green] ( Bientôt avec système de sauvegarde )[/green][/i]
"Monstres":" ":"legenvert":"legendaire":"Jaune":"Bleu":"Blanc"
Locate 13,1,D
Locate 13,3,C
Locate 13,4,B [green][i]( Avant les chiffres de la première faille ne s'afficher que quand il y en avais au moins un, il y avais un blanc)[/i] [/green]
Locate 13,5,E
Locate 13,6,F
Locate 13,7,G
Locate 18,1,"N°"
Locate 20,1,H+1 [i][green] ( N° de la faille )[/green][/i]
While 1
Locate 13,1,D
Int (Ran#x1001)→A
If Not A
Then Isz B
Locate 13,4,B
Else If A=1000
Then Isz C
Locate 13,3,C
Else If A≥100 And A≤140
Then Isz E
Locate 13,5,E
Else If A≥329 And A≤360
Then Isz F
Locate 13,6,F
Else If A≥497 And A≤503
Then Isz G
Locate 13,7,G
IfEnd:IfEnd:IfEnd:IfEnd:IfEnd
If D=1000
Then H+1→H
Prog "Faille"
IfEnd
Do:LpWhile Getkey≠31
Do:LpWhile Getkey
WhileEnd
Faille:
ClrText
Locate 5,2," Félicitation "
Locate 4,3," Tu as vaincue la"
Locate 5,4,"Faille n°"
Locate 15,4,H
Locate 5,6,"Tu as obtenu"
Locate 18,6,B+C
Locate 6,7,"Legendaire"◢
ClrText
0→D
0→E
0→F
0→G [green][i]( seule les légendaire reste )[/i][/green]
"Monstres":" ":"legenvert":"legendaire":"Jaune":"Bleu":"Blanc"
Locate 13,1,D
Locate 13,3,C
Locate 13,4,B
Locate 13,5,E
Locate 13,6,F
Locate 13,7,G
Locate 17,1,H+1
Return
Je trouve le code très compliquai personnellement
Mais voila le code marche en tout cas vraiment bien
merci encore un fois
Citer : Posté le 12/05/2014 18:29 | #
C'est pas très compliqué, au moins le code est bien organisé
A la rigueur, si t'as un fichier C de 1000 lignes pas indenté, commenté, optimisé, là c'est incompréhensible