Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Problema sumando numeros hexadecimales

Estas en el tema de Problema sumando numeros hexadecimales en el foro de C/C++ en Foros del Web. Tengo un pequeño problema, se trata de que tengo que indicar la hora inicial y final, una vez que me dan la duracion, pero no ...
  #1 (permalink)  
Antiguo 08/05/2010, 20:16
 
Fecha de Ingreso: enero-2006
Mensajes: 94
Antigüedad: 18 años, 2 meses
Puntos: 2
Problema sumando numeros hexadecimales

Tengo un pequeño problema, se trata de que tengo que indicar la hora inicial y final, una vez que me dan la duracion, pero no soy capaz de hacer que funcione.Se trataria de sumar a la hora inicial la duracion...
Este es el codigo que hice y no funciona
Código:
horas_final=((duracion)/0x0060)+horas;
minutos_final=((duracion)%0x0060)+minutos;
horas y minutos serian las iniciales.Los numeros se representa de manera 0x0000 (hexadecimal).
A ver si me podeis ayudar por favor.Muchas gracias de antemano!
  #2 (permalink)  
Antiguo 08/05/2010, 21:27
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años
Puntos: 228
Respuesta: Problema sumando numeros hexadecimales

porque usas 0x0060??? eso no es 60 en decimal.

Me parece que vos tenes en duracion el tiempo en minutos y queres ver cuantas horas entran. Pone directamente

horas_final=((duracion)/60)+horas;
minutos_final=((duracion)%60)+minutos;
  #3 (permalink)  
Antiguo 09/05/2010, 03:18
 
Fecha de Ingreso: enero-2006
Mensajes: 94
Antigüedad: 18 años, 2 meses
Puntos: 2
Respuesta: Problema sumando numeros hexadecimales

me sigue sin salir aun asi... te muestro un ejemplo de ejecucion:
Código:
	17:37	1c:4b	140
17:37 es la hora de inicio. 1c:4b seria la hora final, que es lo que esta mal y 140 la duracion en minutos.Todo en hexadecimal.
  #4 (permalink)  
Antiguo 09/05/2010, 06:53
 
Fecha de Ingreso: junio-2008
Ubicación: Seattle, USA
Mensajes: 733
Antigüedad: 15 años, 10 meses
Puntos: 61
Respuesta: Problema sumando numeros hexadecimales

0x60 no es 60.
0x60 esta en base 16, o sea es: 6*16

aunque los numeros esten en base 39432048, una vez que lo tienes en variables, ellos estan en base 10 y para que la operatoria resulte, tienes que usar, en tu codigo "60" (en base 10). Si los numeros tienen que ser presentados o ingresados en otra base, es otro asunto, pero la aritmetica tiene que ser con 60.

60 en base 16 es 0x3C

Última edición por CalgaryCorpus; 09/05/2010 a las 10:00
  #5 (permalink)  
Antiguo 09/05/2010, 08:15
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años
Puntos: 228
Respuesta: Problema sumando numeros hexadecimales

Con que lees los datos? hay una opcion del scanf que lee hexadecimales y obviamente se guardan como un decimal.

scanf("%x",&i);

Etiquetas: numeros, sumando
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:02.