[ Foro de C# ]

Sobrecarga - Traza de métodos recursivos

11-Apr-2014 22:00
Invitado (Roberto Melgar)
1 Respuestas

Hola buenas tardes tengo este ejecicio si me pueden ayudar a resolverlo

Tengo este pequeño ejercicio

Métodos Recursivos
Identificar el resultado de la ejecución de los siguientes segmentos de código. Utilice una tabla de trazabilidad para ayudarse a obtener el resultado final.

y este el es codigo

 
public int M1(int num)
{
if(num < - 4)
return 8;
else
return num + M1(num - 3);
}
int result1 = M1(8);
MessageBox.Show(?La respuesta final es ? + result1);
 


----------------------------------------otro--------------------------------

 
public int M3(int num)
{
if(num > 20)
return -1;
else
return num * product(-2 * num);
}
int result3 = product(1);
Console.WriteLine(?La respuesta final es ? + result3);
 



13-Apr-2014 21:34
Nacho Cabanes (+31)

¿Cuál es la duda? Sólo tienes que ir "siguiendo la ejecución" paso a paso, como si tú fueras la computadora, comprobando (y anotando) qué valor tiene cada variable en cada paso. El formato exacto depende de cómo tu profesor quiera que lo hagas.

Por ejemplo, para la primera función, comienzas con

 
Primera llamada: M1(8)
num < - 4 ? No -> devolver 4 + M1 (8-3)
Segunda llamada: M1(5)
num < - 4 ? No -> devolver 4 + M1 (5-3)
...
 


Por cierto, no sé por qué el título de la consulta era "sobrecarga" si realmente estás preguntando por trazas de funciones recursivas, que poco tiene que ver con la sobrecarga.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)