Help with basic Java function

0

I am learning java in the uni and I must finish this code, but I have a problem with the if and I have not been able to know what it is, sorry if it is something very silly, I am just learning, thanks in advance

public double calcularPremioEquipo( String pCodigo )
{
    double premio = 0;

    if (equipo1.darCodigo().equals(pCodigo));
    {
        premio=equipo1.calcularPremioBase();
        if (equipo1 == darPrimerLugar());
        {
            premio = premio + BONIFICACION_PRIMER_LUGAR;
            return (double) premio;
        }

        else if(equipo1 == darUltimoLugar());
        {
            premio= premio - DEDUCCION_ULTIMO_LUGAR;
            return (double) premio;
        }

        if (premio < 0);
        {
            premio= 0.0;
            return premio;
        }

    }

    if (equipo2.darCodigo().equals(pCodigo));
    {
        premio=equipo2.calcularPremioBase();
        if(equipo2 == darPrimerLugar());
        {
            premio = premio + BONIFICACION_PRIMER_LUGAR;
            return (double) premio;
        }
        else if (equipo2 == darUltimoLugar());
        {
            premio= premio - DEDUCCION_ULTIMO_LUGAR;
            return (double) premio;
        }
        if (premio < 0);
        {
            premio= 0.0;
        }
    }

    if (equipo3.darCodigo().equals(pCodigo));
    {
        premio=equipo3.calcularPremioBase();
        if(equipo3 == darPrimerLugar());
        {
            premio = premio + BONIFICACION_PRIMER_LUGAR;
            return (double) premio;
        }
        else if (equipo3 == darUltimoLugar());
        {
            premio= premio - DEDUCCION_ULTIMO_LUGAR;
            return (double) premio;
        }
        if (premio < 0);
        {
            premio= 0.0;
        }
    }

    if(equipo4.darCodigo().equals(pCodigo));
    {
        premio=equipo4.calcularPremioBase();
        if (equipo4 == darPrimerLugar());
        {
            premio = premio + BONIFICACION_PRIMER_LUGAR;
            return (double) premio;
        }
        else if (equipo4 == darUltimoLugar());
        {
            premio= premio - DEDUCCION_ULTIMO_LUGAR;
            return (double) premio;
        }
        if(premio < 0);
        {
            premio= 0.0;
        }
    }
}
    
asked by Diego Patiño 28.02.2017 в 07:02
source

1 answer

2

The error is that not all parts of the code return a value. to solve this you can add a return premio; to the end of the function before the last bracket.

Edit: I had not seen the other error, you have to remove the ; at the end of the If . The code would look something like this:

public double calcularPremioEquipo( String pCodigo ) 
{
  double premio = 0; 
  if (equipo1.darCodigo().equals(pCodigo))
  {
    premio=equipo1.calcularPremioBase();
    if (equipo1 == darPrimerLugar())
    {
        premio = premio + BONIFICACION_PRIMER_LUGAR;
        return (double) premio;
    }

    else if(equipo1 == darUltimoLugar())
    {
        premio= premio - DEDUCCION_ULTIMO_LUGAR;
        return (double) premio;
    }

    if (premio < 0);
    {
        premio= 0.0;
        return premio;
    }

}

if (equipo2.darCodigo().equals(pCodigo))
{
    premio=equipo2.calcularPremioBase();
    if(equipo2 == darPrimerLugar())
    {
        premio = premio + BONIFICACION_PRIMER_LUGAR;
        return (double) premio;
    }
    else if (equipo2 == darUltimoLugar())
    {
        premio= premio - DEDUCCION_ULTIMO_LUGAR;
        return (double) premio;
    }
    if (premio < 0)
    {
        premio= 0.0;
    }
}

if (equipo3.darCodigo().equals(pCodigo))
{
    premio=equipo3.calcularPremioBase();
    if(equipo3 == darPrimerLugar())
    {
        premio = premio + BONIFICACION_PRIMER_LUGAR;
        return (double) premio;
    }
    else if (equipo3 == darUltimoLugar())
    {
        premio= premio - DEDUCCION_ULTIMO_LUGAR;
        return (double) premio;
    }
    if (premio < 0)
    {
        premio= 0.0;
    }
}

if(equipo4.darCodigo().equals(pCodigo))
{
    premio=equipo4.calcularPremioBase();
    if (equipo4 == darPrimerLugar())
    {
        premio = premio + BONIFICACION_PRIMER_LUGAR;
        return (double) premio;
    }
    else if (equipo4 == darUltimoLugar())
    {
        premio= premio - DEDUCCION_ULTIMO_LUGAR;
        return (double) premio;
    }
    if(premio < 0)
    {
        premio= 0.0;
    }
}
return premio;
}
    
answered by 28.02.2017 в 07:25