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

Usar while o for para varios datos

Estas en el tema de Usar while o for para varios datos en el foro de C/C++ en Foros del Web. Hola a todos, soy nuevo en este foro y he estado leyendo sus aportes de verdad que se rifan... Tengo un problema con un programa, ...
  #1 (permalink)  
Antiguo 02/03/2016, 12:33
 
Fecha de Ingreso: marzo-2016
Mensajes: 4
Antigüedad: 8 años, 1 mes
Puntos: 0
Usar while o for para varios datos

Hola a todos, soy nuevo en este foro y he estado leyendo sus aportes de verdad que se rifan...

Tengo un problema con un programa, lo que hace es calcular el total del salario de un trabajador tomando en cuenta que por cada hora se le pagan 50, y por cada hora extra se le paga en 80.

Ya esta hecho, pero ahora quiero que este programa me pida el tiempo de trabajo de 5 empleados y sume el total a pagar de todos, estoy intentando con for y con while pero no logro estructurar nada nada

Código HTML:
#include<stdio.h>
#include<stdlib.h>

main ()             
{  

/*Declaración de variables */
int horas, hextra, sueldo, empleado=0; 



printf ("\n\nIngrese el numero de horas trabajadas al dia: ");

while (empleado=5)

printf ("\n\nEmpleado %d: ", empleado);
scanf ("%d",&horas);

if (horas>8)
hextra= horas - 8;
sueldo= hextra * 80 + 400;

if (horas<=8)
sueldo=horas*50;


printf ("sueldo diario = $ %d", sueldo);

printf ("\n\n\t");
system ("pause");


}
mi pregunta es:

como hago para que el mensaje que solicita las horas salga 5 veces, y que cada dato quede guardado en algun contador para que al final se sume.

Esta ultima variable debe seruna float??
  #2 (permalink)  
Antiguo 02/03/2016, 12:39
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 9 años, 6 meses
Puntos: 204
Respuesta: Usar while o for para varios datos

Código C:
Ver original
  1. while (empleado=5)
  2. printf ("\n\nEmpleado %d: ", empleado);

Ese fragmento de código, tal cual está en tu programa, hace lo siguiente:

Código:
1. empleado=5
2. if( empleado != 0 ) printf( ... )
3. goto 1
Vamos que imprime la misma secuencia por pantalla hasta el final de los tiempos y poco más.

Entiendo que tu idea es que empleado vaya incrementándose hasta llegar a 5, momento que quieres salir del bucle. Eso lo tienes que plasmar con la condición "empleado<5". Lo que tienes puesto actualmente es una asignación... ojo con eso.

Además se entiende también que tu idea es que el bucle abarque algo más que una línea de código... eso lo consigues encerrando el contenido a ejecutar varias veces con llaves {}

Código C:
Ver original
  1. while( empleado<5 )
  2. {
  3.   // código a ejecutar varias veces
  4. }

Y además no se te debe olvidar actualizar el valor de la variable empleado. Como en este caso el número de repeticiones está bastante acotado (5 veces, de 0 a 4), lo suyo es usar un bucle for, ya que deja el código más claro:

Código C:
Ver original
  1. for( empleado=0; empleado<5; empleado++ )
  2. {
  3.   // Código a ejecutar las 5 veces del bucle
  4. }

Y a partir de aquí sigues tu a ver qué tal se te da.

Por cierto, referente a tu pregunta sobre el uso o no de float decirte que eso dependerá de qué es lo que necesitas almacenar en la variable. Si tienes que usar números muy muy grandes o muy muy pequeños o con decimales deberías plantearte usar float o, mejor aún, double. Para almacenar números enteros lo mejor es usar int o long long, el tipo concreto ya dependerá del rango de valores esperado (el primero te dará normalmente 32 bits y el segundo 64).

Un saludo.
__________________
La ayuda se paga con esfuerzo o con dinero. Si no estás dispuesto a esforzarte y quieres que te hagan los deberes pide presupuesto, al menos así ahorrarás tiempo.
  #3 (permalink)  
Antiguo 02/03/2016, 13:22
 
Fecha de Ingreso: marzo-2016
Mensajes: 4
Antigüedad: 8 años, 1 mes
Puntos: 0
Respuesta: Usar while o for para varios datos

mil gracias amigo ya logre acomodarlo con for!!!

Te lo agradezco de verdad.. solamente me falta una cuestion, al sumar los 5 resultados,
YA QUEDO!!

solo mi ultimo problema es como sumar los resultados de cada ciclo..

la vdd lo puse asi:

total = sueldo + sueldo + sueldo + sueldo +sueldo
  #4 (permalink)  
Antiguo 02/03/2016, 15:08
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 9 años, 6 meses
Puntos: 204
Respuesta: Usar while o for para varios datos

El contenido del bucle se ejecuta 5 veces, en cada una de estas veces obtienes el sueldo de un trabajador... No se te ocurre cómo hacerlo?

Dale un poco al coco que es la única forma de aprender a hacerlo.
__________________
La ayuda se paga con esfuerzo o con dinero. Si no estás dispuesto a esforzarte y quieres que te hagan los deberes pide presupuesto, al menos así ahorrarás tiempo.
  #5 (permalink)  
Antiguo 02/03/2016, 15:48
 
Fecha de Ingreso: marzo-2016
Mensajes: 4
Antigüedad: 8 años, 1 mes
Puntos: 0
Respuesta: Usar while o for para varios datos

demonios le doy vueltas y vueltas y no se me ocurrre nada..

de que manera puedo "guardar" el resultado de cada bucle en otra variable y que se sumen en automatico, quiza con while??
  #6 (permalink)  
Antiguo 02/03/2016, 16:00
 
Fecha de Ingreso: marzo-2016
Mensajes: 4
Antigüedad: 8 años, 1 mes
Puntos: 0
Respuesta: Usar while o for para varios datos

YA PUDE!!!

LO HICE DE LA SIGUIENTE MANERA:

suma = sueldo + suma;

}
total= suma;

y me dio el resultado correcto..

muchas gracias brother!!

Veo que sos de Madrid, saludos hasta alla, tengo muchos amigos españoles y clientes españoles!

Etiquetas: int, numero, programa, tiempo, usar
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 02:22.