Ayuda con un programa muy facil

Iniciado por gallardo22, 28 Octubre 2012, 14:33 PM

0 Miembros y 1 Visitante están viendo este tema.

gallardo22

tengo que hacer una tarea tal que en una empresa calcules el consumo de la factura.

entonces lo que yo tengo hecho de codigo es esto:#include <stdio.h>
#include <stdlib.h>
int main(int argc, char** argv)
{
   float empresa, particular, pensionista;
   float precio_de_la_factura;
   float consumo;
   printf("Introduzca la cantidad (en m^3):");
   scanf("%f", &consumo);
   if (consumo < 50.0f)
       precio_de_la_factura = 0.50f * consumo;
   else if (consumo > 50.0f)
       precio_de_la_factura = 0.75f * consumo;
   printf("Empresa,particular,pensionista: ");
   scanf("%f", empresa);
   scanf("%f", particular);
   scanf("%f", pensionista);
   
   if(empresa==empresa)
     precio_de_la_factura = precio_de_la_factura* 0.73f;
   if (particular==particular)
     precio_de_la_factura = precio_de_la_factura* 0.77f;
   if (pensionista==pensionista)
     precio_de_la_factura = precio_de_la_factura* 0.88f;    
     if (precio_de_la_factura < 10.0f)
       precio_de_la_factura = 10.0f;
   printf("el precio de la factura es: %.2f euros\n", precio_de_la_factura);
   system("pause");
   return (EXIT_SUCCESS);
}


Ahora mi duda viene con la parte de si eres particular, empresa o pensionista, a la hora de introducir el descuento. No se muy bien como hacerlo, lo he intentado pero no me lo toma como valido el compilador y  se salta esas lineas.

Muchas gracias de antemano  ;D

leosansan

Quedaría por "ajustar "cositas" en el código, pero para que salgas de la duda y variando lo mínimo tu código, sería:
Código (cpp) [Seleccionar]

#include <stdio.h>
#include <stdlib.h>
int main(int argc, char** argv)
{
    int empresa_particular_pensionista;
    float precio_de_la_factura;
    float consumo;
    printf("Introduzca la cantidad (en m^3):");
    scanf("%f", &consumo);
    if (consumo < 50.0)
        precio_de_la_factura = 0.50 * consumo;
    else if (consumo > 50.0)
        precio_de_la_factura = 0.75 * consumo;
    printf("Empresa (1),particular (2),pensionista (3): ");
    scanf("%d", &empresa_particular_pensionista);

    if(empresa_particular_pensionista==1)
        precio_de_la_factura*=0.73;
    if (empresa_particular_pensionista==2)
        precio_de_la_factura*=0.77;
    if (empresa_particular_pensionista==3)
        precio_de_la_factura*=0.88;
    if (precio_de_la_factura < 10.0)
        precio_de_la_factura = 10.0;
    printf("el precio de la factura es: %.2f euros\n", precio_de_la_factura);
    system("pause");
    return (EXIT_SUCCESS);
}

Saludos!.

gallardo22

#2
muchisimas gracias! estaba atascado en eso y ya no sabia que hacer :D

PD: por curiosidad, tu que cambiarias del codigo?

flony

creo que alguna macama me mande en la parte de la funcion pago
esta hecho en c++ pero mas o menos para tener una idea
#include <iostream>

using namespace std;

float pago(float metro_cubico)
{
float pago;

if(metro_cubico<=10){pago=10.0;}
else {
   if ((metro_cubico>10 )&&( metro_cubico<50)){
pago=((metro_cubico-10)*0.50 + 10.0);}
else {
if(metro_cubico>=50){
pago=((metro_cubico * 0.75)+10.0);}
}
}
return pago;
}

float tipo_prestador(int a)
{
float tasa;
if (a==1){ tasa= (1.27);}
if (a==2){ tasa=1.23;}
if (a==3){ tasa=1.12;}
return tasa;
}

void main()
{
float m3;
int prestador;
cout<<"buen dia ingrese los metros cubicos: " <<endl;
cin>>m3;
cout<<"ahora ingrese el tipo de prestador: " <<endl;
cin>>prestador;
cout<<"pago "<<endl;
cout <<pago(m3)*tipo_prestador(prestador)<<endl;
system("PAUSE");
}
si un problema no tiene solucion entonces no es un problema...es algo inevitable