FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Fonctionnement du caret_x_position(N)
par Jack Hier à 20:36

» Problèmes en cours.
par Jack Hier à 20:31

» PanExpress : l'éditeur Panoramic avec création d'objet
par Minibug Hier à 19:55

» Exemple d'une nouvelle version d'un GRID
par Minibug Hier à 17:36

» Comment faire fonctionner \qj en RTF ?
par jjn4 Mer 12 Déc 2018 - 19:25

» Mais où est donc passé Klaus ?!
par Jicehel Mer 12 Déc 2018 - 13:38

» Problème avec SaveStringList.
par Klaus Mer 12 Déc 2018 - 12:14

» Je suis de retour !
par Klaus Mer 12 Déc 2018 - 12:10

» Connexion au forum
par mindstorm Mer 5 Déc 2018 - 19:09

» Version instantanée V 0.9.29i5 du 17/11/2018
par silverman Ven 30 Nov 2018 - 10:37

» imprimer avec Print.dll
par JL35 Jeu 29 Nov 2018 - 21:33

» Convertisseur Décimal ---> Binaire, Octal, Hexadécimal, ...
par Minibug Dim 25 Nov 2018 - 15:37

» Impression de documents
par JL35 Ven 23 Nov 2018 - 19:45

» Logiciel de soutien scolaire.
par Marc Jeu 22 Nov 2018 - 20:51

» Logiciel de soutien en langues.
par Marc Jeu 22 Nov 2018 - 19:39

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Décembre 2018
LunMarMerJeuVenSamDim
     12
3456789
10111213141516
17181920212223
24252627282930
31      
CalendrierCalendrier

Partagez | 
 

 Conversion des bases : binaire, octal, decimal, héxadécimal

Aller en bas 
AuteurMessage
Minibug

avatar

Nombre de messages : 3241
Age : 52
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

MessageSujet: Conversion des bases : binaire, octal, decimal, héxadécimal    Sam 17 Nov 2018 - 17:29

Bonjour à tous !

Je ne sais pas s'il y a encore des gens vivants sur le forum... Laughing
Si c'est le cas, j'aimerai savoir s'il y a des fonctions dans Panoramic qui permettent ces conversions ?

Et sinon, y a t'il des formules de calculs pour passer d'une base à l'autre ?
Je sais que Marc (enfin je crois que c'est lui..) avait réalisé un convertisseur mais je ne le retrouve pas. Suspect

Merci d'avance pour vos réponses. Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
Yannick

avatar

Nombre de messages : 8095
Age : 47
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Sam 17 Nov 2018 - 18:47

Salut Minibug !

Toujours vivant, un peu bancale mais toujours vivant !
Pour ce qui est des conversions, je pense que c' était du Papydall.

Embarassed c'était gigi75
http://panoramic.1fr1.net/t5468-convertisseur-de-base-10-de-2-36?highlight=base

et du Papydall :
Code:
rem ============================================================================
rem        Conversion de la base 10 vers la base 256
rem    les "chiffres" de la base 256 sont les caractères du code ASCII
rem ============================================================================

dim n,s$,result$
width 0,1050 : height 0,800 : color 0,150,100,50
alpha 10 : top 10,10 : left 10, 250 : font_bold 10 : font_name 10,"arial"
font_size 10,20 : font_color 10, 0,255,255 : caption 10,"Conversion base 10 vers base 256"
for n = 1 to 5
    list 100*n : height 100*n, 700 : width 100*n, 170 : top 100*n, 50 : left 100*n, 200*n-180
    color 100*n,0,0,255 : font_color 100*n,255,255,0 : font_bold 100*n
next n

for n = 1 to 255
     Decimal_To_Base256(n)
     if n < 100 then s$ = " "
     if n < 10  then s$ = "  "
     if n < 51
        item_add 100, s$ + str$(n) + " décimal = " + result$ + " base 256"
     else
        if n < 102
           item_add 200, s$ + str$(n) + " décimal = " + result$ + " base 256"
        else
           if n < 153
              item_add 300, s$ + str$(n) + " décimal = " + result$ + " base 256"
           else
              if n < 204
                 item_add 400, s$ + str$(n) + " décimal = " + result$ + " base 256"
              else
                 item_add 500, s$ + str$(n) + " décimal = " + result$ + " base 256"
              end_if
           end_if
        end_if
     end_if
next n

' ******************************************************************************
end
rem ============================================================================
SUB Decimal_To_Base256(nombre_decimal)
    dim_local q,r,c$
    q = nombre_decimal : result$ = ""
    while q > 0
          r = mod(q,256) : q = int(q/256)
          c$ = chr$(r) : result$ =  c$ + result$
    end_while
end_sub
rem ============================================================================
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Marc

avatar

Nombre de messages : 993
Age : 57
Localisation : TOURS
Date d'inscription : 17/03/2014

MessageSujet: Re: Conversion des bases : binaire, octal, decimal, héxadécimal    Sam 17 Nov 2018 - 19:42

Bonjour à tous !

Toujours vivant aussi !
Noyé dans les peintures plafonds et portes + tapisseries des chambres, salon, couloir, cage d'escalier, cuisine...

Bref, Minibug, si ça peut t'aider : http://panoramic.1fr1.net/t5524-convertisseur-binaire-vers-dcimal-hexadcimal

A bientôt !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Minibug

avatar

Nombre de messages : 3241
Age : 52
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

MessageSujet: Re: Conversion des bases : binaire, octal, decimal, héxadécimal    Sam 17 Nov 2018 - 19:58

Je me sent moins seul d'un seul coup ! cheers

merci à tous les 2 pour vos retours.

Yannik a écrit:
Toujours vivant, un peu bancale mais toujours vivant !
Prends soin de toi. Wink

Marc a écrit:
Noyé dans les peintures plafonds et portes + tapisseries des chambres, salon, couloir, cage d'escalier, cuisine...
Et oui il n'y a pas que la programmation dans la vie... Bon courage pour tes travaux drunken

PS : Pour le code je l'avais retrouvé entre temps. Merci. Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
papydall

avatar

Nombre de messages : 6056
Age : 68
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Conversion des bases : binaire, octal, decimal, héxadécimal    Dim 18 Nov 2018 - 1:09

Minibug a écrit:
… j'aimerai savoir s'il y a des fonctions dans Panoramic qui permettent ces conversions ?

En Panoramic, tu as les deux fonctions HEX$(V) et HEX(V$) qui retournent respectivement la valeur hexadécimale d'une représentation décimale et la valeur décimale d'une représentation hexadécimale.

Pour les autres conversions, je t’offre  gratuitement (à toi et à tous les Panoramiciens «  encore vivants sur le forum ») le code ci-après.


Code:

rem ============================================================================
rem           Conversion entre bases par Papydall
rem              Décimal -------> Hexadécimal
rem              Hexadécimal ---> Décimal
rem              Hexadécimal ---> Binaire
rem              Binaire -------> Décimal
rem              Décimal -------> Binaire
rem rem ========================================================================  
' message Dec2Hex$(20)
' message Hex2Dec("20")
' message Hex2Bin$("ff")
' message Bin2Dec("1111")
  message Dec2Bin$(50)
end
rem ============================================================================
' Convertir un nombre décimal en un nombre en hexadécimal
' Paramètre : un nombre en décimal
' Le résultat est une chaîne de caractères représentant un nombre en hexadécimal
FNC Dec2Hex$(decimal)
    result hex$(decimal)
END_FNC
rem ============================================================================
' Convertir un nombre hexadécimal en un nombre en décimal
' Paramètre : une chaîne représentant un nombre en hexadécimal
' Le résultat est un nombre en décimal
FNC Hex2Dec(hexa$)
    result hex(hexa$)
END_FNC
rem ============================================================================
' Convertir un nombre hexadécimal en un nombre en binaire
' Paramètre : une chaîne de caractères représentant un nombre en hexadécimal
' Le résultat est une chaîne de caractères représentant un nombre en binaire
FNC Hex2Bin$(hexa$)
    dim_local i,h$,r$
    h$ = upper$(hexa$)
    for i = 1 to len(h$)
        select asc(mid$(h$,i,1))
            case 48 : r$ = r$ + " 0000"
            case 49 : r$ = r$ + " 0001"
            case 50 : r$ = r$ + " 0010"
            case 51 : r$ = r$ + " 0011"
            case 52 : r$ = r$ + " 0100"
            case 53 : r$ = r$ + " 0101"
            case 54 : r$ = r$ + " 0110"
            case 55 : r$ = r$ + " 0111"
            case 56 : r$ = r$ + " 1000"
            case 57 : r$ = r$ + " 1001"
            case 65 : r$ = r$ + " 1010"
            case 66 : r$ = r$ + " 1011"
            case 67 : r$ = r$ + " 1100"
            case 68 : r$ = r$ + " 1101"
            case 69 : r$ = r$ + " 1110"
            case 70 : r$ = r$ + " 1111"
        end_select        
    next i
    result r$    
END_FNC
rem ============================================================================
' Convertir un nombre binaire en un nombre en décimal
' Paramètre : une chaîne de caractères représentant un nombre en binaire
' Le résultat est  un nombre en décimal
FNC Bin2Dec(bin$)
    dim_local i,r
    r= 0
    for i = 1 to len(bin$)
        If Mid$(bin$, Len(bin$) - i + 1, 1) = "1" then r = r + power(2,i-1)
    next i
    result r        
END_FNC
rem ============================================================================
' Convertir un nombre décimal en un nombre en binaire
' Paramètre : un nombre en décimal
' Le résultat est une chaîne de caractères représentant un nombre en binaire
FNC Dec2Bin$(dec)
    dim_local n,tmp$
    n = dec
    while n > 1
        tmp$ = str$(n-2*int(n/2)) + tmp$
        n = int(n/2)
    end_while
    result str$(n) + tmp$    
END_FNC
rem ============================================================================
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Minibug

avatar

Nombre de messages : 3241
Age : 52
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

MessageSujet: Re: Conversion des bases : binaire, octal, decimal, héxadécimal    Dim 18 Nov 2018 - 9:05

Bonjour tout le monde !  geek

Merci pour ton programme Papydall. Wink

J'ai ressorti un vieux topic de septembre 2012 qui se trouve ici.
Il traite justement de conversion binaire.

J'ai récupérer un code de Nardo26 qui semble très intéressant...
Une première SUB permet de convertir un nombre décimal en n'importe qu'elle base.
Et la seconde récupére un nombre en n'importe qu'elle base (qui doit être précisée) vers le décimal.

Je l'ai adapté avec les SUB et les DIM_LOCAL pour le rendre plus simple d'utilisation. le voici :

Code:

DIM conv$ : conv$="0123456789ABCDEF"

Dec_to_N(234,2)
Dec_to_N(74,8)
Dec_to_N(51966,16)
Dec_to_N(817,3)
Dec_to_N(3735928559,16)
N_to_Dec("DEADBEEF",16)
N_to_Dec("101",2)
PRINT "fini !"  

END

' ************************************************************
' * Conversion d'un nombre décimal vers un nombre en base N *
' ************************************************************
SUB Dec_to_N(DecN,base)
   PRINT "Conversion de ";DecN;" en base ";base;" = ";
   DIM_LOCAL DecN$
   WHILE DecN>0
      IF FRAC(DecN/base)=0
         DecN$="0"+DecN$
      ELSE
         DecN$=MID$(conv$,(DecN-(INT(DecN/base)*base))+1,1)+DecN$
      END_IF
      DecN=INT(DecN/base)
   END_WHILE
   PRINT DecN$
END_SUB

' ************************************************************
' * Conversion d'un nombre en base N vers un nombre décimal *
' ************************************************************
SUB N_to_Dec(DecN$,base)
   PRINT "Conversion de ";DecN$;" en base ";base;" = ";
   DIM_LOCAL DecN
   WHILE DecN$<>""
      DecN=(DecN*base)+INSTR(conv$,LEFT$(DecN$,1))-1
      DecN$=RIGHT$(DecN$,LEN(DecN$)-1)
   END_WHILE
   PRINT DecN
END_SUB


Qu'est ce que vous en pensez ? drunken


Dernière édition par Minibug le Dim 18 Nov 2018 - 9:58, édité 3 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
Marc

avatar

Nombre de messages : 993
Age : 57
Localisation : TOURS
Date d'inscription : 17/03/2014

MessageSujet: Re: Conversion des bases : binaire, octal, decimal, héxadécimal    Dim 18 Nov 2018 - 9:19

Bonjour Minibug !
Bonjour à tous !

Merci pour le café du dimanche matin ! lol! lol!



Je retourne à mes travaux...

Bonne journée dominicale !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Minibug

avatar

Nombre de messages : 3241
Age : 52
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

MessageSujet: Re: Conversion des bases : binaire, octal, decimal, héxadécimal    Dim 18 Nov 2018 - 9:25

Laughing Laughing Laughing

Ces exemples ne sont pas de moi mais de Nardo26 !
Alors remercions le. Very Happy

D'ailleurs Nardo, si tu nous lis toujours, n’hésites pas à nous faire un petit coucou... Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://gpp.panoramic.free.fr
papydall

avatar

Nombre de messages : 6056
Age : 68
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Conversion des bases : binaire, octal, decimal, héxadécimal    Mer 21 Nov 2018 - 0:38

Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Contenu sponsorisé




MessageSujet: Re: Conversion des bases : binaire, octal, decimal, héxadécimal    

Revenir en haut Aller en bas
 
Conversion des bases : binaire, octal, decimal, héxadécimal
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Convertisseur Binaire
» conversion héxa en décimal
» Conversion Binaire-> hexadécimale et décimale -> hexadécimale
» Conversion fichier MVK
» Ouverture READ/WRITE d'un fichier binaire

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: