Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Turakam

#1
El enunciado es este: Escribe un programa que lea de la entrada estándar y convierta a decimal todos los números que encuentra, extrayéndolos en la salida estándar. Si encuentra un número en octal o en hexadecimal, debe ser convertido. Del mismo modo, detectará que los números contienen decimales y los mostrará de forma correcta

Y este es el codigo que tengo hasta ahora:

#include <stdio.h>
#include <ctype.h>

main ()
{
int c,i;
int hexa_n, octal_n;
char str[100];

printf ("Escribe un texto incluyendo numeros en hexadecimal y octal: \n");
scanf ("%s",&str);
for (i = 0; i <= strlen(str); i++)
if (isxdigit(str[i]) != 0);
{
hexa_n = strtol(str,NULL,16);
printf ("El numero hexadecimal %X es %d\n",hexa_n,hexa_n);
}
}


El problema es que en este código solo me lee desde la primera posición y necesito que si por ejemplo tengo "Hola mundo A2", me tiene que leer el A2 y pasarmelo a decimal, pero con mi codigo me leeria la H y no funcionaria, una ayudita!!!
#2
No tengo practicamente nada, o se como plantearlo siquiera...
#3
Buenas, tengo un problema que no se resolver. Tengo que leer de una entrada estandar y convertir los numeros hexadecimal y octal que encuentre a decimal, pero volviendo a ponerlos en la entrada.

Alguien me puede ayudar?

THX!