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

VB.NET Discussion :

Conversion entiers longs > binaire


Sujet :

VB.NET

  1. #1
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2002
    Messages : 257
    Par défaut Conversion entiers longs > binaire
    Salut à tous,

    Je travaille actuellement sur les entiers longs non signés (Ulong,uint64) et
    il me faut un convertisseur correct pour utiliser des masques etc...mais bizarement ils ne me donnent pas tous les mêmes résultats.Par exemple en ligne (2 exemples:http://pagesperso-orange.fr/serge.kn...vertisseur.htm et http://www.easycalculation.com/decimal-converter.php) le décimal "36028797018963970" donne en binaire "10000000000000000000000000000000000000000000000000000000" alors que les exemples de progs comme celui-ci:
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    Module Module1
     
        Sub Main()
            Dim value As ULong = 36028797018963970UL
     
            Console.WriteLine(Bin(value))
            Console.Read()
     
        End Sub
        Private Function Bin(ByVal x As ULong) As String
            Dim temp As String
     
            temp = ""
            Do
                If x Mod 2 Then
                    temp = "1" + temp
                Else
                    temp = "0" + temp
                End If
     
                x = x \ 2    
     
                If x < 1 Then Exit Do
     
            Loop
            Bin = temp
     
        End Function
    End Module
    donnent "10000000000000000000000000000000000000000000000000000010"
    comme binaire.Etonant aussi c'est qu'en ligne 36028797018963970 et 36028797018963968 renvoient le même binaire.Donc j'aimerai savoir s'il existe un convertisseur d'entiers longs fiable et pourquoi il y a des différences entre plusieurs versions et lequel donne le bon binaire.Merci.

    Salutations.

  2. #2
    Expert confirmé
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Par défaut
    Je ne sais pas pour les programmes en ligne, mais 36028797018963970 en binaire c'est 10000000000000000000000000000000000000000000000000000010.
    Pour vérifier, la calculatrice de Windows (Démarrer > Tous les programmes > Accessoires > Calculatrice) peut faire la conversion pour toi (tu tapes le nombre de Déc et tu passe en Bin en haut à gauche)

  3. #3
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2002
    Messages : 257
    Par défaut
    Salut smyley,

    Merci pour ta réponse.
    Donc en ligne c'est inexact, l'exemple en vb est bon.
    Je n'avais pas pensé à la calculatrice
    Merci encore.

    Salutations.

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Pour le faire en VB.NET :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        Private Function Bin(ByVal x As ULong) As String
            Bin = Convert.ToString(x, 2)
        End Function

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

Discussions similaires

  1. Conversion entier en binaire
    Par philippe6 dans le forum Débuter avec Java
    Réponses: 7
    Dernier message: 02/09/2011, 11h23
  2. [conversion] entier long en string
    Par floanne dans le forum Langage
    Réponses: 2
    Dernier message: 24/06/2010, 15h58
  3. Réponses: 18
    Dernier message: 10/04/2009, 10h27
  4. Conversion d'entier positif en binaire
    Par tribalweb dans le forum Langage
    Réponses: 2
    Dernier message: 18/05/2008, 03h48
  5. conversion entier -> binaire
    Par dereck1333 dans le forum C
    Réponses: 18
    Dernier message: 18/11/2007, 19h56

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