elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  ayuda con codigo en C de base hex a dec
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ayuda con codigo en C de base hex a dec  (Leído 1,777 veces)
martinpss

Desconectado Desconectado

Mensajes: 2


Ver Perfil
ayuda con codigo en C de base hex a dec
« en: 28 Septiembre 2018, 01:57 am »

necesito ayuda en un codigo en C para transformar un numero en base hexadecimal a decimal, eh intentado pero no me resulta


« Última modificación: 28 Septiembre 2018, 02:36 am por martinpss » En línea

martinpss

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: ayuda con codigo de num hex a dec
« Respuesta #1 en: 28 Septiembre 2018, 02:00 am »

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

#include <math.h>

int main() {

    char cad[10]={' '};

    int c=0,n=0,tam,i,num[1];

    system("clear");

    printf ("Ingrese el numero: ");

    scanf("%s",cad);

    tam=sizeof(cad);

    for(i=tam-1; i>=0; i--) {

        if(cad<10 && cad>0)

            n=n+cad*pow(16,c);

        else if(cad=='a')  num=10;

        else if(cad=='b') num=11;

        else if(cad=='c') num=12;

        else if(cad=='d') num=13;

        else if(cad=='e') num=14;

        else if(cad=='f') num=15;

        n=n+num*pow(16,c);

        c++; }

    printf ("El resultado es: %d",n);

   

    return 0;

}


En línea

donYoyo

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: ayuda con codigo en C de base hex a dec
« Respuesta #2 en: 6 Octubre 2018, 06:57 am »

hola, estuviste cerca del resultado, solo algunos alcances que te los comente en el mismo código.

Código
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <stdlib.h>
  4. #include <math.h>
  5.  
  6. int main() {
  7.    char cad[10]={' '};
  8.  
  9.    int c=0,n=0 /*lo usamos para acumular*/,tam,i,num;   // num[1] lo convertiria en un vector o arreglo
  10.  
  11.    system("clear");
  12.  
  13.    printf ("Ingrese el numero: ");
  14.  
  15.    scanf("%s",cad);
  16.  
  17.    //   tam=sizeof(cad);   la funcion sizeof siempre te devolvera el tamanio total de la variable (dependiendo del tipo)
  18.    tam=(int)strlen(cad);
  19.  
  20.    for(i=tam-1; i>=0; i--) {
  21.  
  22.        if ((cad[i]<='9') && (cad[i]>='0'))
  23.            num=cad[i]-48;
  24.        else if((cad[i]=='a') || (cad[i]=='A')) num=10;
  25.        else if((cad[i]=='b') || (cad[i]=='B')) num=11;
  26.        else if((cad[i]=='c') || (cad[i]=='C')) num=12;
  27.        else if((cad[i]=='d') || (cad[i]=='D')) num=13;
  28.        else if((cad[i]=='e') || (cad[i]=='E')) num=14;
  29.        else if((cad[i]=='f') || (cad[i]=='F')) num=15;
  30.  
  31.        n=n+num*(int)pow(16,c);
  32.  
  33.        c++;
  34.      }
  35.        printf ("El resultado es: %d\n",n);
  36.  
  37.  
  38.  
  39.    return 0;
  40.  
  41. }
  42.  


nota: la variable cad al ser un arreglo de caracteres, se puede utilizar como el texto completo, o por cada posición o byte, utilizando un subindice, ejemplo cad[1], lo que se rescata de ahí, es el carácter ASCII que representa al carácter contenido.
ya que los números en la tabla ASCII están representados de el (ASCII-48) "0" al (ASCII-57) "9", al restarle 48 consigues su valor o representación numérica.
buena suerte, y adelante con mas códigos, que es la única forma de aprender.

En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: ayuda con codigo en C de base hex a dec
« Respuesta #3 en: 6 Octubre 2018, 16:41 pm »

unsignes num;
scanf("%x", &num);
printf("%u", num);
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Crear Base de datos por codigo
.NET (C#, VB.NET, ASP)
Zeroql 2 3,024 Último mensaje 28 Julio 2010, 03:03 am
por MaLkAvIaN_NeT
[APORTACION] Código base de Splash
Java
Afsoon 3 2,648 Último mensaje 8 Noviembre 2010, 22:36 pm
por 1mpuls0
Necesito ayuda con el codigo de una Base de Datos en Mysql
Bases de Datos
eda6 3 3,617 Último mensaje 8 Julio 2012, 22:59 pm
por eda6
Base de datos con código QR
Programación General
Karkass 5 12,623 Último mensaje 9 Diciembre 2014, 09:05 am
por engel lex
Codigo de regalo en base de datos
PHP
Cripting 0 1,980 Último mensaje 27 Diciembre 2016, 01:24 am
por Cripting
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines