Problema con la sobrecarga del operador <<

Iniciado por Lord_Lobotomi, 4 Diciembre 2011, 21:03 PM

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

Lord_Lobotomi

Sencillamente mi problema es que intento que el operador << me muestre un numero fraccionario como 3/4... pero lo que hace es mostrar el numero 6029362/2293672 asi el usuario ingrese cualquier numero... aqui adjunto el código, espero alguien me pueda ayudar

#include <iostream.h>

class racional
{
    int numerador, denominador;

    public:
    racional(int numerador, int denominador);

    friend ostream& operator << (ostream& s, racional C);


};

ostream &operator<< (ostream& s, racional C)
{
    s<<C.numerador<<"/"<<C.denominador;
    return s;

}

racional :: racional(int numerador, int denominador)
{
        numerador = numerador;
        denominador = denominador;

}

main()
{
    int num1, num2;

    cout<<"ingrese el numerador";
    cin>>num1;
    cout<<"ingrese el denominador";
    cin>>num2;

    racional C(num1, num2);
    cout<<C;
}

satu

Hola

En el constructor debes cambiar el nombre de los parámetros o poner esto
Código (cpp) [Seleccionar]

racional :: racional(int numerador, int denominador)
{
        this->numerador = numerador;
        this->denominador = denominador;

}


para indicar que estás accediendo a los atributos

Saludos
Breakbeat como forma de vida

Lord_Lobotomi

 >:D Muchas gracias... he resuelto el problema con tu ayuda!! te lo agradezco