IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mathématiques Discussion :

Savoir si le nombre courant est une dizaine


Sujet :

Mathématiques

  1. #1
    Membre expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Points : 3 338
    Points
    3 338
    Par défaut Savoir si le nombre courant est une dizaine
    Bonjour à tous

    Je cherche comment déterminer si un nombre courant est sur une dizaine.
    Exemple : 56354811497 => est une dizaine
    Mais : 354811497 => n'est pas une dizaine

    Je peux déterminer le nombre de 0 mais cela donne 1, 4, 7, 10, 13, 16, 19... donc pas applicable sur un modulo

    Si quelqu'un à une idée toute simple

    Merci
    Par pitié !!!! :Si vous ne savez pas faire cliquez ici !
    Citation Envoyé par Marc-L
    C'est dommage que parfois tu sois aussi lourd que tu as l'air intelligent…

  2. #2
    Membre expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Points : 3 338
    Points
    3 338
    Par défaut
    Finalement modulo 3 = 1 c'est bon
    Par pitié !!!! :Si vous ne savez pas faire cliquez ici !
    Citation Envoyé par Marc-L
    C'est dommage que parfois tu sois aussi lourd que tu as l'air intelligent…

  3. #3
    Membre éclairé
    Homme Profil pro
    web a11y
    Inscrit en
    Avril 2014
    Messages
    157
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : web a11y
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2014
    Messages : 157
    Points : 717
    Points
    717
    Par défaut Es-tu bien sûr ?
    Et 7 mod 3, ça donne quoi ?
    Et 22 mod 3 ?
    Et (3n + 1) mod 3, ça donne quoi à ton avis ?

    Je crois que tu es allé trop vite en besogne.

  4. #4
    Membre expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Points : 3 338
    Points
    3 338
    Par défaut
    Heu non.... Je ne crois pas
    Nom : Capture.PNG
Affichages : 2581
Taille : 9,7 Ko
    D'ailleurs pour les centaines modulo 3 = 2 c'est parfait !
    Par pitié !!!! :Si vous ne savez pas faire cliquez ici !
    Citation Envoyé par Marc-L
    C'est dommage que parfois tu sois aussi lourd que tu as l'air intelligent…

  5. #5
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    pfou... je crois que je viens de comprendre, en fait tu prends le nombre total de chiffres qui composent le nombre et tu soustrais 1 et appliques un modulo 3 dessus
    en fait ce que tu entends par "dizaine" s'oppose aux unités, aux "centaines" et aux "milliers", 10^4 par exemple c'est "une dizaine de milliers"

    donc quand Stellar7 parle de 7 mod 3, le "7" signifie qu'on parle d'un nombre à 8 chiffres, soit en "dizaines" de millions

  6. #6
    Membre expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Points : 3 338
    Points
    3 338
    Par défaut
    Yes

    Désolé de ne pas avoir été clair au début je pensait que c'était le cas
    Pas facile quand on visualise le truc dans sa tête, ça nous parait clair.

    J'ai bien parlé du nombre de 0 au départ Ce qui en effet est la longueur du nombre - 1

    En effet c'est bien les dizaines, dizaines de millier, dizaines de millions... que je voulais détecter
    Et aussi les centaines du coup

    Il y avait un autre moyen de procéder ?
    Par pitié !!!! :Si vous ne savez pas faire cliquez ici !
    Citation Envoyé par Marc-L
    C'est dommage que parfois tu sois aussi lourd que tu as l'air intelligent…

  7. #7
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    Citation Envoyé par cerede2000 Voir le message
    Il y avait un autre moyen de procéder ?
    possible je sais pas, mais appliquer un modulo 3 sur la longueur du nombre c'est encore le plus évident à faire et en terme de traitement ça coûte rien donc bon...

  8. #8
    Membre expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Points : 3 338
    Points
    3 338
    Par défaut
    On est d'accord la dessus
    Par pitié !!!! :Si vous ne savez pas faire cliquez ici !
    Citation Envoyé par Marc-L
    C'est dommage que parfois tu sois aussi lourd que tu as l'air intelligent…

  9. #9
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Bonjour

    En résumé, on cherche à savoir si la partie entière du logarithme décimal d'un nombre égale 1 modulo 3.

    Formule mathématique

    Résultat d'une console python:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    >>> import math
    >>> def dopd(x):                                                                                                                                                                                                     
    ...  return int(math.log(x)/math.log(10))%3==1
    ... 
    >>> dopd(56354811497)
    True
    >>> dopd(354811497)                                                                                                                                                                                           
    False
    >>> dopd(10000)
    True
    >>> dopd(9999)
    False
    >>> dopd(99999)
    True
    >>> dopd(999999)
    False
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  10. #10
    Membre expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Points : 3 338
    Points
    3 338
    Par défaut
    Oula !!!
    Mes cours de maths sont déjà si loin que ça ? Je ne sais même plus a quoi correspond un logarithme
    Par pitié !!!! :Si vous ne savez pas faire cliquez ici !
    Citation Envoyé par Marc-L
    C'est dommage que parfois tu sois aussi lourd que tu as l'air intelligent…

  11. #11
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    99
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2010
    Messages : 99
    Points : 143
    Points
    143
    Par défaut
    Bonjour,

    comme solution alternative à celle de Flodelarab, tu peux convertir ton entier en chaîne de caractères et tester si la longueur de la chaîne est congru à 2 modulo 3.

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    def dopd(x):  
         return len(str(x)) % 3 == 2

  12. #12
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Un vilain mettra des zéros non significatifs:

    0010000.00
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  13. #13
    Membre expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Points : 3 338
    Points
    3 338
    Par défaut
    @Flodelarab : Ça ce n'est pas gênant pour moi, car je traite déjà comme une chaîne que je découpe en 3 et sur laquelle je fais un leading de 0
    Par pitié !!!! :Si vous ne savez pas faire cliquez ici !
    Citation Envoyé par Marc-L
    C'est dommage que parfois tu sois aussi lourd que tu as l'air intelligent…

  14. #14
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 243
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 243
    Points : 13 458
    Points
    13 458
    Par défaut
    Citation Envoyé par cerede2000 Voir le message
    @Flodelarab : Ça ce n'est pas gênant pour moi, car je traite déjà comme une chaîne que je découpe en 3 et sur laquelle je fais un leading de 0
    Mais quelle horreur. Tu ne traites pas la valeur numérique ?


    Si tu utilises LibreOffice Calc comme tableur, je te donne la formule, traduction de ce qui a été dit plus haut:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(TRONQUE(MOD(LOG(A1;10);3))=1;VRAI();FAUX())
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  15. #15
    Membre expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Points : 3 338
    Points
    3 338
    Par défaut
    Difficile de critiquer quand on ne connais pas la finalité du besoin

    Le but étant de transformer un nombre en mots => 21045 : vingt et un mille quarante cinq

    Je n'utilise d'ailleurs plus le module 3 pour déterminer centaines dizaine ou unité.
    Le module me sert uniquement à savoir si justement le nombre est bien sous la forme 000000.

    Donc traitement par groupe de 3 nombre sur split, remplis avec 0 si < 3 comme ci dessus, je traite "021" "045"
    La puissance du nombre me permet de déterminer le numéral (mille, million, milliard...)
    Par pitié !!!! :Si vous ne savez pas faire cliquez ici !
    Citation Envoyé par Marc-L
    C'est dommage que parfois tu sois aussi lourd que tu as l'air intelligent…

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 25/03/2011, 09h58
  2. Savoir si un nombre est une puissance de x
    Par Hell dans le forum Mathématiques
    Réponses: 15
    Dernier message: 18/07/2008, 07h54
  3. [XSL] savoir si le noeud courant est root
    Par luta dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 08/11/2005, 16h18
  4. [CR10] Comment savoir si c'est une nouvelle page ?
    Par speed034 dans le forum SAP Crystal Reports
    Réponses: 8
    Dernier message: 23/09/2005, 18h18
  5. Réponses: 4
    Dernier message: 30/06/2002, 20h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo