Ver Mensaje Individual
  #7 (permalink)  
Antiguo 01/12/2015, 16:21
quovadistourvirtual
 
Fecha de Ingreso: diciembre-2015
Mensajes: 1
Antigüedad: 8 años, 5 meses
Puntos: 0
Respuesta: Programa: estacionamiento con cuota minima, horas adicionales y cuota máxi

Asi lo hice yo, los datos se ingresan dejando un espacio entre ellos y cuando se terminan de ingresar todos los datos se pone 0 y se aprieta enter. Por ejemplo los datos de este ejercicio se ingresan asi 1.5 4 24 0 enter, pero puedes ingresar mas datos si quieres poniendo 0 al final.
También creo que la idea del ejercicio es usar la función ceil que se usa para redondear hacia arriba. Para poder usar esta función hay que poner #include <math.h>
Estoy resolviendo los ejercicios de este libro, si quieren se pueden pasar por mi pagina. Estan los ejercicios de los capitulos 3 y 4, tratare de subir los del capitulo 5 pronto (este ejercicio es del capitulo 5). Saludos amigos busquen mi pagina es pitupan.comlu.com


#include <stdio.h>
#include <stdlib.h>
#include <math.h>

float calculaImporte(float horas);

int main()
{
float horas=0;
float importe=0;
float totalHoras=0;
float totalImporte=0;
int c=1;

printf("Ingrese horas de estacionamiento de cada automovil (0 para terminar): ");
scanf("%f",&horas);
printf("Automovil Horas Importe\n");

while(horas!=0){
importe=calculaImporte(horas);
printf("%-9d %10.1f %11.2f\n",c,horas,importe);
totalHoras+=horas;
totalImporte+=importe;
c++;
scanf("%f",&horas);
}

printf("Total%15.1f %7.2f\n",totalHoras,totalImporte);

return 0;
}

float calculaImporte(float horas)
{
float costo=0;

if(horas<=3) costo=2;
if(horas>3 && horas<19) costo=2+0.5*(ceil(horas)-3);
if(horas>=19) costo=10;

return costo;
}