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

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 [11]
101  Programación / Programación C/C++ / Duda programa con estructuras de control en: 9 Noviembre 2011, 22:14 pm
Buenas, tengo el siguiente programa que me pide un valor hexadecimal y lo transforma en decimal, sin importar que sea letras mayusculas o minúsculas, es código es el siguiente:

#include <stdio.h>

int main ()
{

char car1;
char car2;
char valor1;
char valor2;
int valor;
printf("Introduzca un valor hexadecimal:\n");
scanf("\n%c%c", &car1, &car2);

if('0'<=car1 && car1<='9')
valor1=car1-'0';
else if ('A'<=car1 && car1<='F')
valor1=car1-'A'+10;
else if ('a'<=car1 && car1<='f')
valor1=car1-'a'+10;

if('0'<=car2 && car2<='9')
valor2=car2-'0';
else if ('A'<=car2 && car2<='F')
valor2=car2-'A'+ 10;
else if ('a'<=car2 && car2<='f')
valor2=car2-'a'+10;

valor= 16*valor1 + valor2;

printf("EL valor decimal de 0x%c%c es %d\n",car1,car2,valor);
return 0;
}


Pero me han pedido que proteja el programa de tal forma que detecte si alguno de los carácteres es inválido, indicándolo con un mensaje de error y no procesándolos.

Lo he intentado poniendo otro if else, pero no sé como sacarlo, ¿alguna ayuda?

Gracias y un saludo
Páginas: 1 2 3 4 5 6 7 8 9 10 [11]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines