Dev - C++ - Ayuda con problemas de conversion para hacer el codigo fuente de unos problemas que me dieron

 
Vista:
Imágen de perfil de Francisco
Val: 55
Ha aumentado 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con problemas de conversion para hacer el codigo fuente de unos problemas que me dieron

Publicado por Francisco (36 intervenciones) el 10/02/2018 20:48:39
Hola estimados, ¿Cómo están?,
Tengo inquietudes con los siguientes enunciados:
a)dada una cantidad de días, convertir a días, horas y minutos:
Sea di de tipo entero la cantidad de días ingresados, entonces para pasar a horas hago hor= di*24
Para pasar a minutos razono de la siguiente forma: Hay 60 minutos en cada hora, entonces en 24 horas hay 1440. Es decir, 24*60=1440 minutos.
Luego, min= di*1440;
Ahora bien, quiero expresar los días ingresados en días, si yo divido la cantidad de días ingresados por 30, me doy cuenta que está mal. También intenté hacer el residuo de di%30 y luego dividir por 30 puesto que el mes tiene 30 días, pero me equivoqué, ya que lo estoy pasando a meses. Y yo quiero expresar el tiempo ingresado en días a días.
b) dado el tiempo expresado en horas, convertir a horas, minutos y segundos.
Sea hr el tiempo ingresado en horas, paso a minutos. Sería min= hr*60
paso a segundos, sería seg= hr*3600.
Y cuando quiero pasar de horas a horas me falla la lógica ya que híce hr= hr+(min%60 +seg%3600) y me equivoqué.
También lo pensé como hr= hr% (3600*60)
c) dado el tiempo expresado en minutos, convertir a horas, minutos y segundos.
Sea min la cantidad de minutos ingresados, paso a horas, sería hs= min/60, a segundos, seg=min*60
Pero cuando quiero expresarlo en minutos se me complica,
Yo lo pensé como min= min %3600
d)dado el tiempo en segundos, pasar a horas, minutos y segundos.
Sea seg la cantidad de segundos ingresada, paso a horas. Hs= seg/3600
Ahora paso a minutos, min= (hs*3600)/60.
Y finalmente a segundos, por lo que lo hago de dos formas.
seg= seg-(hs*3600+min*60
tambien se me ocurrio sacar el residuo en razón de buscar los segundos que sobran.
Sería
seg= seg%60
e)dado el tiempo en horas pasar a dias, horas y minutos
Sea hs la cantidad de horas ingresadas, paso a dias.
di= hs/24
a minutos
min= hs*60
¿Y cómo hago para pasar de horas a horas?
...


http://diagramas-de-flujo.blogspot.com.ar/2012/12/convertir-de-segundos-horas-minutos-segundos.html
Ahí les paso el link que convierte segundos a horas, minutos y segundos.
Necesito que me respondan de manera ordenada por favor, con las respectivas respuestas enumeradas por ítem.
Y cómo puedo razonarlo para la próxima vez no atorarme.
Por favor, se los agradezco demasiado.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 661
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con problemas de conversion para hacer el codigo fuente de unos problemas que me dieron

Publicado por agustin (522 intervenciones) el 10/02/2018 23:38:13
Para pasar de días a días, horas y minutos tiene que ser un valor decimal. Esto es en C:
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
int main()
{
	int dias,horas,minutos;
 
	printf("Introduce la cantidad de dias: ");
	scanf("%d",&dias);
	horas=dias*24;
	minutos=horas*60;
	printf("%d dias son %d horas o %d minutos",dias,horas,minutos);
	return 0;
}
Para pasar de segundos a horas, minutos y segundos:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
 
int main()
{
	int horas,minutos,segundos;
 
	printf("Introduce la cantidad de dias: ");
	scanf("%d",&segundos);
	minutos=segundos/60;
	segundos%=60;
	horas=minutos/60;
	minutos%=60;
	printf("son %d horas, %d minutos y %d segundos",horas,minutos,segundos);
	return 0;
}
El resto ponle ganas porque es igual para todos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 661
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con problemas de conversion para hacer el codigo fuente de unos problemas que me dieron

Publicado por agustin (522 intervenciones) el 11/02/2018 00:22:46
Perdón, para el caso primero sería así y no como puse arriba:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <math.h>
 
int  main()
{
	int dias,horas,minutos;
	float entrada;
 
	printf("Introduce la cantidad de dias: ");
	scanf("%f",&entrada);
	dias=entrada;
	entrada-=dias;
	entrada*=24;
	horas=entrada;
	entrada-=horas;
	minutos=roundf(entrada*60);
	printf("son %d dias, %d horas y %d minutos",dias,horas,minutos);
	return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Francisco
Val: 55
Ha aumentado 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con problemas de conversion para hacer el codigo fuente de unos problemas que me dieron

Publicado por Francisco (36 intervenciones) el 11/02/2018 18:29:24
Sí, ahí voy entendiendo. ¿Y cómo hago para pasar de minutos a segundos si ingreso minutos en forma decimal?. O sea, Digo, sea min los minutos ingresados, lo guardo en minutos de tipo int y digo min=min-minutos
luego segundos= min* 60). Y para pasar a las horas transcurridas hago horas= minutos/60 y luego minutos=minutos%60, porque ahí obtengo los minutos iniciales. ¿Es así?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 661
Bronce
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con problemas de conversion para hacer el codigo fuente de unos problemas que me dieron

Publicado por agustin (522 intervenciones) el 11/02/2018 19:47:50
Este código descompone desde minutos a días, horas, minutos y segundos:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <math.h>
 
int  main()
{
	int dias,horas,minutos,segundos;
	float entrada;
 
	printf("Introduce la cantidad de minutos: ");
	scanf("%f",&entrada);
	horas=entrada/60;
	dias=horas/24;
	entrada-=horas*60;
	horas=horas%24;
	minutos=entrada;
	entrada-=minutos;
	segundos=round(entrada*60);
	printf("son %d dias, %d horas, %d minutos y %d segundos",dias,horas,minutos,segundos);
	return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar