Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: cazagavilan en 24 Julio 2011, 08:42 AM

Título: Sumar un porcentaje
Publicado por: cazagavilan en 24 Julio 2011, 08:42 AM
Hola, tengo este codigo en el que pido un precio y un iva para despues sumarlos el problema que tengo es que no se como hacer que el numero  introduzido en iva se convierta en un porcentaje, por ejemplo: ellos me introduzen el numero 18 y yo lo paso a %18.

Código (cpp) [Seleccionar]
#include "stdafx.h"
#include "iostream"
using namespace std;
double total (double, double);

void main()
{
double precio, iva;
cout << "Introduzca el precio: " ;
cin >> precio;
cout << "Introduzca el iva: " ;
cin >> iva;
cout << "El total es: " << total(precio,iva) << "\n";
}
double total ( double precio, double iva)
{
double total = precio+iva;
return total;
}


Gracias.
Título: Re: Sumar un porcentaje
Publicado por: bigfu en 24 Julio 2011, 15:52 PM
total = precio + (precio*IVA/100);
Título: Re: Sumar un porcentaje
Publicado por: cazagavilan en 24 Julio 2011, 16:08 PM
Gracias.
Título: Re: Sumar un porcentaje
Publicado por: Queta en 24 Julio 2011, 16:24 PM
¿Por qué sigues incluyendo stdafx?
Título: Re: Sumar un porcentaje
Publicado por: cazagavilan en 24 Julio 2011, 17:25 PM
Me sale automaticamente y lo dejo por si acaso...
Título: Re: Sumar un porcentaje
Publicado por: cazagavilan en 24 Julio 2011, 17:26 PM
Bueno he avanzado un pelin mas y ahora tengo otro problema xD.. Dentro el ejercicio anterior tambien tengo que hacer que si no escriben el iva se sume automaticamente un 18% pero no se me suma nada.
Código (cpp) [Seleccionar]
#include "stdafx.h"
#include "iostream"
using namespace std;
double total (double, double);
double iva2 = 18;

void main()
{
        double precio, iva;
        cout << "Introduzca el precio: " ;
        cin >> precio;
        cout << "Introduzca el iva: " ;
        cin >> iva;
        cout << "El total es: " << total(precio,iva) << "\n";
        if (iva > 0)
                cout << total (precio,iva);
        else
                cout << precio+(precio*(iva2/100));

}
double total ( double precio, double iva)
{
        double total = precio+(precio * (iva / 100));
        return total;
}


Gracias.
Título: Re: Sumar un porcentaje
Publicado por: cazagavilan en 24 Julio 2011, 17:38 PM
Si quito stdafx.h me da error.
Título: Re: Sumar un porcentaje
Publicado por: bigfu en 24 Julio 2011, 18:45 PM
Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;
double total (double, double);
double iva2 = 18;

int main(){
       double precio, iva;
       cout << "Introduzca el precio: " ;
       cin >> precio;
       cout << "Introduzca el iva: " ;
       cin >> iva;
       if (iva > 0)
               cout << total (precio,iva);
       else
               cout << precio+(precio*(iva2/100));

       return 0;
}

double total ( double precio, double iva)
{
       double total = precio+(precio * (iva / 100));
       return total;
}


He quitado el stdafx.h, cambiado void main() por int main() y he añadido return 0 al final del main y no me da problema alguno...
Título: Re: Sumar un porcentaje
Publicado por: cazagavilan en 24 Julio 2011, 20:34 PM
Gracias ya me funciona pero sigo sin poder quitar stdafx.h no se por que..
Título: Re: Sumar un porcentaje
Publicado por: Ferno en 24 Julio 2011, 21:32 PM
Compilador?
Título: Re: Sumar un porcentaje
Publicado por: Queta en 24 Julio 2011, 21:51 PM
No es problema del compilador. Suponiendo que tienes Visual Studio, cuando creas un nuevo proyecto, por ejemplo de consola, los pasos para configurarlo serían: File/New/Project/WinXX Console Application/WinXX Application Wizard/Application Settings/Additional options: añade Empty project pero quita Precompiled header.
Título: Re: Sumar un porcentaje
Publicado por: PiroskY en 24 Julio 2011, 22:51 PM
1 No entiendo por que hacen una funcion "total" que despues usan en un caso si y en otro no, cuando sirve para los dos, simplemente dandole un iva y el otro
2 Me parece que es demasiado simple lo que hace esa funcion como para crearla, pero bueno, eso ya es tema de gustos
3 Necesitas la variable global iva? de no ser asi te diria que la metas en el main
4 usas un double(int) para guardar el numero 18, cuando con un unsigned char alcanza y sobra (para el uso que le estas dando). O, si en realidad no lo necesitas, podes en el if en vez de poner iva, poner 18 y ahorrarte una variable
Título: Re: Sumar un porcentaje
Publicado por: cazagavilan en 25 Julio 2011, 06:48 AM
Me lo piden asi pero gracias.