Estructura de Datos Expliacacion de Metodos Recursivos

4
INSTITUTO TECNOLÓGICO DE TLAXIACO ESTRUCTURA DE DATOS ALUMNO: PEDRO SANCHEZ HERNANDEZ CATEDRÁTICO: ING. IVOR ACEVEDO BAUTISTA TEMA : “EXPLICACION DE METODOS RECURSIVOS” INGENIERÍA EN SISTEMAS COMPUTACIONALES III SEMESTRE GRUPO: “B” 9 DE OCTUBRE DEL 2015

description

estructura de datos

Transcript of Estructura de Datos Expliacacion de Metodos Recursivos

Page 1: Estructura de Datos Expliacacion de Metodos Recursivos

INSTITUTO TECNOLÓGICO DE TLAXIACO

ESTRUCTURA DE DATOS

ALUMNO: PEDRO SANCHEZ HERNANDEZ

CATEDRÁTICO: ING. IVOR ACEVEDO BAUTISTA

TEMA : “EXPLICACION DE METODOS RECURSIVOS”

INGENIERÍA EN SISTEMAS COMPUTACIONALES

III SEMESTRE GRUPO: “B”

9 DE OCTUBRE DEL 2015

Page 2: Estructura de Datos Expliacacion de Metodos Recursivos

En el código lo que se muestras es que lo primero que es el caso baso es cuando x sea mayor que 100 la operación que realiza es que solo le resta 10 a x

En caso que no se cumpla lo primero pasa al caso de la llamada recursiva en donde la operación que haces es que retornar el valor de x +1 lo cual al final de varias veces de retornar va llegar al momento de donde x va ser mayor que 100

Por ejemplo meter el valor 110

Lo primero es que entra en el caso base y lo único que se le haría a ese valor es que se se le restaría 10 y retornaría 100

Otro seria meter el valor 90 y como no entra en la primera condición entonces lo que haría es que pasa a la siguiente comparación y haría la operación de 90+1 y retornaría 91 ahora x vale 91 y se compara si x es mayor que 100 y como no lo es pasa a sumarse 91+1 y retornaría x=92 y como no entra en el primer caso aumenta x=93, x=94, x=95, x=96, x=97, x=98, x=99, x=100, x=101 y este caso cuando x vale 101 se compara y entra en el caso cuando x>100 y entonces lo que retorna al final es 101-10 y x resultaría con valor de 91.

Page 3: Estructura de Datos Expliacacion de Metodos Recursivos

El código muestra que como caso base tenemos cuando num sea > que 1 y si se cumple pide otra condición si el residuo de num%div nos da 0 entonces nos imprime el divisor y por caso contrario fuese diferente de 0 entonces hace una llamada recursiva y retorna el método con el valor de div aumentado en +1 y vuelve a comparar y si se cumple la del residuo es igual a 0 retorna al método con en valor de num=num/div y ahora num tiene un nuevo valor y vuelve a comparar si lo que se retorno es >1 vuelve hacer lo mismo

Prueba meter el valor de num=20 y div=10

Como num es > que 1 entonces compara si el residuo de num%div es igual que 0 y como en este caso si da 0 entonces nos imprime div y div=10 y hace la llamada recursiva cambiando el valor de num que sería num=num/div que en este caso retornaría num=2 entonces compara si num>1 y como si es el caso pasa a la siguiente comparación el residuo es =0 y como en este caso no da 0 si no da 2 entonces hace la llamada recursiva del método incrementando el div=div+1 y entonces seria num=2 y div=11 y vuelve a comparar y en este caso como num si es >que 1 entonces si su residuo es 0 que este caso siempre seria 2 como el div aumenta en 1 entonces simpre daría el residuo de 2 y el num siempre seria >que 2 por tanto siempre entraría en esa condición

Y si num no fuera 20 si no otro el caso cambia pues tal vez el primer residuo de 0 y el segundo igual o al dividir num/div nos de 1 entonces se termina y finaliza el método

Si num fuese<=1 entonces finaliza el metodo