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 - Vos tutoriels et astuces


Index du Forum » Vos tutoriels et astuces » Connaitre le nombre de chiffres dans un nombre, sans String
Breizh_craft En ligne Modérateur Points: 1171 Défis: 7 Message

Connaitre le nombre de chiffres dans un nombre, sans String

Posté le 27/05/2014 20:32

Salut !

Ce code :
Int (log (Abs X))+1
permet de renvoyer le nombre de chiffres que contient X.

Exemple :
Si X vaut 58; 90; 23; ... ce code renverra 2.
Si 100≤X<1000 ce code renverra 3.
Etc...

Cette astuce est sans doute connue, mais pas par tout le monde.


Lephenixnoir En ligne Administrateur Points: 24678 Défis: 170 Message

Citer : Posté le 27/05/2014 21:15 | #


Il y a des exceptions.
D'abord, pour x=0, inutile même d'y penser...
Ensuite, il faudrait préciser que x doit être entier relatif, sinon je vais te tomber dessus en te disant que .1 ne s'écrit pas avec 0 chiffre.

Au fait, il est également possible d'obtenir le nombre dans une base quelconque en remplaçant
log X

par
(log X/log B)

Où B est la base choisie.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Totoyo Hors ligne Membre d'honneur Points: 16103 Défis: 102 Message
Positon Hors ligne Rédacteur Points: 2396 Défis: 57 Message

Citer : Posté le 27/05/2014 22:05 | #


On l'avait déjà dans cette compilation d'astuces.
D'ailleurs j'ai été surpris de ne pas trouver cette dernière dans la liste des tutoriels de qualité. Ce n'est peut-être pas un tutoriel révolutionnaire mais il y a tout ce qu'il faut pour ne pas avoir à se casser la tête.
Un marque-page serait du moins un minimum.
Maliafo Hors ligne Membre Points: 236 Défis: 27 Message

Citer : Posté le 27/05/2014 22:36 | #


Positon a écrit :

D'ailleurs j'ai été surpris de ne pas trouver cette dernière dans la liste des tutoriels de qualité. Ce n'est peut-être pas un tutoriel révolutionnaire mais il y a tout ce qu'il faut pour ne pas avoir à se casser la tête.
Un marque-page serait du moins un minimum.

Je m'sens utile

Sinon juste pour réagir à
Int (log (Abs X))+1

il te suffit de mettre le +1 à gauche, et plus besoin de parenthèses

1+Int log Abs X

Comment recouvrir la Terre avec du cuir ?
Avec la semelle de nos chaussures, on en fait autant
Totoyo Hors ligne Membre d'honneur Points: 16103 Défis: 102 Message

Citer : Posté le 27/05/2014 22:43 | #


Positon a écrit :
On l'avait déjà dans cette compilation d'astuces.
D'ailleurs j'ai été surpris de ne pas trouver cette dernière dans la liste des tutoriels de qualité. Ce n'est peut-être pas un tutoriel révolutionnaire mais il y a tout ce qu'il faut pour ne pas avoir à se casser la tête.
Un marque-page serait du moins un minimum.

Voilou, l'erreur est réparée
Maliafo Hors ligne Membre Points: 236 Défis: 27 Message

Citer : Posté le 27/05/2014 22:45 | #


Merci
Faudrai juste corriger le titre, "Manipulations avec les entiers positifs non nuls" est devenu "Manipulations avec les entiers positifs nuls"
Comment recouvrir la Terre avec du cuir ?
Avec la semelle de nos chaussures, on en fait autant
Totoyo Hors ligne Membre d'honneur Points: 16103 Défis: 102 Message
Lephenixnoir En ligne Administrateur Points: 24678 Défis: 170 Message

Citer : Posté le 28/05/2014 06:48 | #


Comme Int, log et Abs ne prennent en paramètre que l'expression immédiate, on peut aussi bien écrire
Int log Abs X+1

Ça peut sembler ne rien apporter, mais puisque souvent ce résultat est utilisé à l'intérieur d'un calcul, ça nous évite d'avoir à envoyer l'expression à la fin du calcul, d'autant plus lorsqu'elle apparaît plusieurs fois.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)

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 80 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