Ver Mensaje Individual
  #5 (permalink)  
Antiguo 04/02/2012, 16:07
caperutxa
 
Fecha de Ingreso: febrero-2012
Mensajes: 75
Antigüedad: 13 años
Puntos: 6
Respuesta: tengo codigos en c# que fallan y no entiendo

Creo que tu problema está ahí:
Cita:
Iniciado por elchache Ver Mensaje
int SumaRecursiva(int a, int b)
{
int resultado;
if (b == 0)
{
resultado = a;
}
else
{
resultado = a+SumaRecursiva(a, b-1);
}
return resultado;

}
Imagina que tienes 4*5 como pusiste. El programa hace:

resultado = 4(b=5) +4(b=4) + 4(b=3) +4 (b=2) + 4(b=1)
Pero entonces haces esto:
resultado = 4
Porqué en el caso b=0 estás asignando, no sumando.

Yo te aconsejaría hacer un for:
for(i=0; i<b; i++){
resultado += a;
}
__________________
Si quieres conseguir resultados diferentes no hagas siempre lo mismo.

Mejora tu entorno. MestralCadiz con su comunidad.