Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Discussions


Index du Forum » Discussions » Connaître le nombre de caractères d'une variable ?


TheBigBadBoy Invité

Connaître le nombre de caractères d'une variable ?

Posté le 08/02/2019 17:33

Bonjour !
Je suis en train de travailler sur un programme qui sert à calculer les limites (il est presque fini et je le publierai après m'être inscrit sur le site).
Pour le faire jusqu'au bout, j'ai besoin de savoir le nombre de caractères (longueur) d'une variable.Sur l'écran, voici ce que cela devrait faire :
lim ... = Ans
x -> "Variable" ^+

Le ^+ doit être mis en fonction de la longueur de la variable...

Autre question : y a-t-il moyen d'arrondir les variables ? (des fois j'obtiens 10^(-12) ...)

Merci d'avance pour vos réponses !



Manolo Hors ligne Membre Points: 910 Défis: 13 Message

Citer : Posté le 08/02/2019 17:45 | #


transforme la variable en chaîne de caractères (y'a un programme sur le site pour faire ça) puis fait StrLens(Str 1)
Lephenixnoir En ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 08/02/2019 18:12 | #


Pour arrondir, oui ça existe. Tu peux soit arrondir tes calculs, soit (mieux) arrondir uniquement à l'affichage avec Fix 4 (affiche 4 décimales) ou autre nombre selon ta convenance.

Si j'ai bien compris, tu veux connaître la longueur nécessaire pour afficher une valeur. Le programme dont parle Manolo est Var2Str de Totoyo.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Manolo Hors ligne Membre Points: 910 Défis: 13 Message

Citer : Posté le 08/02/2019 18:17 | #


c'est ça ! (comment tu fais pour retrouver des vieux prgm aussi rapidement ?)
Lephenixnoir En ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 08/02/2019 18:18 | #


Je sais qu'il est de Totoyo, donc j'ai juste à consulter sa page de profil : Totoyo.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Shadow15510 Hors ligne Administrateur Points: 5503 Défis: 18 Message

Citer : Posté le 08/02/2019 18:29 | #


Sinon tu te souviens du nom du programme u d'un topic où ce programme a été évoqué et tu le recherche
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque

Manolo Hors ligne Membre Points: 910 Défis: 13 Message

Citer : Posté le 08/02/2019 18:52 | #


j'avais demandé dans la shout...


TheBigBadBoy Invité

Citer : Posté le 10/02/2019 11:02 | #


OK !
Merci beaucoup pour vos réponses !
J'arrange tout ça dans mon programme


TheBigBadBoy Invité

Citer : Posté le 10/02/2019 11:33 | #


J'ai essayé le "Fix" , il marche parfaitement !
Et juste pour savoir, comment revenir à un mode sans arrondi (j'ai utilisé cette fonction dans un nouveau programme pour la tester, et elle a aussi changé les arrondis de mon programme des limites (alors qu'elle n'y était pas... )) ?
Lephenixnoir En ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 10/02/2019 11:46 | #


En effet, le mode est global, il concerne toute la calculatrice ! Pour repasser dans le mode le plus classique, utilise la commande Norm 1.

Il y a trois modes d'affichage que tu peux trouver à la fin du menu de configuration en appuyant sur SHIFT, MENU (SET UP). Ce sont Norm (dynamique, celui que tu veux), Fix (nombre de décimales, celui que tu as utilisé), et Sci (écriture scientifique).

Dans l'éditeur de programmes, ces commandes sont disponibles dans le menu DISP localisé sous SHIFT, MENU (SET UP).

Note que si ton utilisateur préfère le mode Sci 4 pour une raison ou pour une autre, à la fin de ton programme il sera retourné en Norm 1. C'est un peu triste mais tu n'as pas vraiment le choix car il n'y a pas de façon systématique de savoir comment l'utilisateur a sélectionné ses paramètres.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Thebigbadboy Hors ligne Maître du Puzzle Points: 455 Défis: 16 Message

Citer : Posté le 10/02/2019 17:04 | #


Un énorme merci pour ton aide LePhenixNoir (et Manolo aussi ) !
Juste encore une dernière question ( *_* )'

Y a-t-il moyen, quand on a arrondi un nombre à l'écran, de le mettre lui-même dans une variable ?

En gros : le programme m'affiche lim … = 1,0000
Mais si on met que 1,0000 devient X et qu'on affiche X, il mettrait donc juste 1.

Edit : Je me suis inscrit


Un problème sans solution est un problème mal posé — Albert Einstein
Lephenixnoir En ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 10/02/2019 17:52 | #


Obtenir le texte qui serait affiché si la valeur était affichée est un peu difficile (en gros faut le construire à la main, c'est casse-pieds).

Mais si tu fais :

Fix 4
1→X
X◢

tu obtiens bien 1.0000. Est-ce que tu as essayé d'afficher X après être repassé en Norm 1 ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Thebigbadboy Hors ligne Maître du Puzzle Points: 455 Défis: 16 Message

Citer : Posté le 10/02/2019 22:39 | #


Malheureusement, ça ne marche pas…

0.999999999 → X
Fix 4
Locate 1,2,X ◢
Norm 1
Locate 1,3,X

À la 2ème ligne, il affiche bien 1.0000 mais à la 3ème 0.999999999
Ce qu'il faudrait, c'est pouvoir reprendre l'expression de l'écran (ce qui me semble impossible)
Et puis, de toute manière, ce n'est pas très gênant d'avoir 1.0000 au lieu de 1
Merci beaucoup pour ton aide
Un problème sans solution est un problème mal posé — Albert Einstein
Lephenixnoir En ligne Administrateur Points: 24572 Défis: 170 Message

Citer : Posté le 10/02/2019 22:47 | #


Mais dans cette situation X vaut bien 0.999999999. Si tu veux arrondir la valeur au lieu de l'affichage, tu peux toujours faire ceci...

ᴇ-4(Int (ᴇ4X))→X

Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Sentaro21 Hors ligne Membre Points: 878 Défis: 0 Message

Citer : Posté le 11/02/2019 04:24 | #


Pour mettre le nombre arrondi dans une variable,
Vous pouvez utiliser RndFix ou Rnd.
0.999999999 → X
RndFix(X,4) → X

0.999999999 → X
Fix 4
X
Rnd
Ans → X

Je continue à développer C.Basic. (Il est compatible avec Basic Casio.)
Overclocking utilitaire Ftune/Ptune2/Ptune3 est également disponible.
Si vous avez des questions ou un rapport de bogue, n'hésitez pas à me le faire savoir.
Thebigbadboy Hors ligne Maître du Puzzle Points: 455 Défis: 16 Message

Citer : Posté le 12/02/2019 17:53 | #


Merci infiniment pour vos réponses !
J'ajoute tout ça

Ajouté le 15/02/2019 à 21:32 :
Voilà le programme
Un problème sans solution est un problème mal posé — Albert Einstein
Fabcvlr Hors ligne Membre Points: 2271 Défis: 41 Message

Citer : Posté le 28/02/2019 14:28 | #


Tu peux utiliser ça https://www.planet-casio.com/Fr/programmes/programme3045-1-comptage-fabcvlr-.html
L'expérience des autres, c'est comme une chandelle que l'on tient allumée dans son dos par une nuit de tempête !

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 v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 236 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