Está en la página 1de 10

INSTITUTO TECNOLÓGICO SUPERIOR DE TAMAZUNCHALE

INGENIERÍA EN SISTEMAS COMPUTACIONALES

Formato para prácticas de laboratorio


DATOS GENERALES

CARRERA Ingeniería en Sistemas Computacionales

PLAN DE ESTUDIO 2010 CLAVE MATERIA AED – 1026

NOMBRE MATERIA Estructura de Datos

DOCENTE Ing. Iván Hernández Hernández

LABORATORIO DE Microcomputadoras

DATOS DE LA PRÁCTICA
2/2.3
PRÁCTICA No 1 UNIDAD/TEMA

RECURSIVIDAD
NOMBRE DE LA
PRACTICA

DURACIÓN (HORAS) FECHA: 28/09/2022

INTEGRANTES: Roberto carlos perez garcia

Jesús Mendiola Martínez

Josafat morales Hernández

José Emmanuel ríos rivera


INSTITUTO TECNOLÓGICO SUPERIOR DE TAMAZUNCHALE
INGENIERÍA EN SISTEMAS COMPUTACIONALES

Formato para prácticas de laboratorio

EVIDENCIAS Y DESARROLLO DE LA PRÁCTICA

1.-OBJETIVO DE LA PRÁCTICA
Elaborar programas en java, a problemas planteados que impliquen el uso de la recursividad para
la resolución de problemas cotidianos.(Algoritmo recursivo de la función matemática que suma los
n primero números enteros positivos.)

2.-PROCEDIMIENTO(DESCRIPCIÓN)

Requisitos:
Tener Instalado un editor de Java

PASO 1
Revisar las actividades del tema Elementos del lenguaje
PASO 2
Dar solución a los problemas que se presentan a continuación, mediante las herramientas de
programación:

Algoritmo recursivo de la función matemática que suma los n primero números enteros
positivos.

3.-EQUIPO NECESARIO MATERIAL Y HERRAMIENTAS

Computadora Procesador de Palabras

Microsoft Teams
Computadora Personal o Portátil

Netbeans, JCreator, Eclipse


INSTITUTO TECNOLÓGICO SUPERIOR DE TAMAZUNCHALE
INGENIERÍA EN SISTEMAS COMPUTACIONALES

Formato para prácticas de laboratorio


Material Escolar Básico (Lápiz, Cuaderno, borrador,
regla.)

4.-DESARROLLO DE LA PRACTICA

Paso Numero 1
Ejecuta el Editor de Java(Netbeans, Jcreator,Eclipse, JavaOnline,
SoloLearn.
Paso Numero 2

Algoritmo recursivo de la función matemática que suma los n primero


números enteros positivos.
Código Java Explicación del codigo

public class numero1 { Definicion de la funcio que debemos sumar


para terner unos parametros enteros

If(n==1)
static long sumaNenteros (int n) {
Se crea la primera variabe y la inicializamos en
if (n==1)
cero
return 1;

else

return n + sumaNenteros(n - 1);


Parametros de tipo entero seria la funcion
} principal

public static void main(String[] args) {

for(int i=1;i<=5;i++) Aquí le inidcamos lo que va hacer para que nos


aroje los resultados
System.out.println("Cuando n="+i+" su
resultado es "+ sumaNenteros(i));
INSTITUTO TECNOLÓGICO SUPERIOR DE TAMAZUNCHALE
INGENIERÍA EN SISTEMAS COMPUTACIONALES

Formato para prácticas de laboratorio


}

Paso Numero 3

Definir la naturaleza recursiva de la serie de Fibonacci: 0, 1, 1, 2, 3, 5,


8 ,13, 21 …
Código Java Explicación del codigo

package unidad2; La sucesion comiensa co 0y1

public class ejemplo2 { 0 == 0

static long fibonacci (long n) 1 == 1

{ 0+1=1

if (n == 0|| n == 1) 1+1=2

return n; 2 + 1 =3

else

return fibonacci(n-1)+ fibonacci(n- 2); Se le llamara a esta funcion (N) y le vamos a


poner un argumento
}
Se le agregamos los terminos 0 y 1
public static void main(String[] args) {

int n=24;

for (int i=0;i<=n;i++)


Se suma el termino anterior aquí en donde
llama fibonachi de 0 y de 1
System.out.println("fibonaci de
"+i+"es"+fibonacci(i));

}
INSTITUTO TECNOLÓGICO SUPERIOR DE TAMAZUNCHALE
INGENIERÍA EN SISTEMAS COMPUTACIONALES

Formato para prácticas de laboratorio


Aquí le damos un valor a fubonachi y nos da el
resultado de un entero nonegativo

Paso Numero 4

Escribir un método recursivo que calcule el factorial de un número n y un


programa que pida un número entero y escriba su factorial..

Código Java Explicación del codigo

package clases; En este codigo hize referencia hacia el

import java.util.Scanner; factorial de un numero el cualse obtuvo


multiplicando al numero excepcion del 0,
otros de los puntos importantes es que el
public class Clase_Principal {
valor fue ingresado atravez de parametros
public static void main(String[] args) {
el cuel se creo dos programas

Scanner entrada = new


Scanner(System.in);

System.out.print("Introduce el
número para calcular su factorial: ");

int numero = entrada.nextInt();


INSTITUTO TECNOLÓGICO SUPERIOR DE TAMAZUNCHALE
INGENIERÍA EN SISTEMAS COMPUTACIONALES

Formato para prácticas de laboratorio


Recursividad recursividad = new
Recursividad();

int factorial =
recursividad.Factorial(numero);

System.out.println("El factorial de " +


numero + " es " + factorial);

Ahora les explicare como obtener el


factorial de un numero a traves del codigo

Se crea el metodo de tipo entero llamado


“factorial”quecontiene una vaiable de tipo
public class Clase_Principal { entero llamado parametro

}
Ahora se escribe la condicion if que dice
public class Recursividad { que la variable llamada parametro siempre
public int Factorial(int parametro){ tiene que ser mayor que cero.
if(parametro > 0){

int valor_calculado = parametro *


Factorial(parametro - 1); Retornando el valor de la variable llamada
“valor_calculado”que sera el
return valor_calculado;
resultado.esto se hara de forma
}
decediente hasta llegar a una variable que
return 1; sea igual que cero.
}

}
INSTITUTO TECNOLÓGICO SUPERIOR DE TAMAZUNCHALE
INGENIERÍA EN SISTEMAS COMPUTACIONALES

Formato para prácticas de laboratorio

Paso Numero 5

Mostrar por pantalla el alfabeto, utilizando recursión indirecta.


Código Java Explicación del codigo

public class abecedario { La recursividad indirecta se produce

public static void main(String [] a) cunado un metodo llama a otro que


eventualmente termina llamando de nuevo
{
al primer metodo
System.out.println();
Examina su parametro c si c esta en orden
metodoA('Z');
alfabetico depues sugue A se le llama
System.out.println();
metodoB() que imediatamente invoca al
}
metodoA() pasandole un parametro de c
static void metodoA(char c)

{
Esta accion hac que metodob() vuelve a
if (c > 'A')
exminar c y nuevamente se le llama
metodoB(c);
metodoB()
System.out.print(c);
La recursion termina ejecutando
} System.out.print(c) veinte veces y se
static void metodoB(char c) arroja el alfabeto

metodoA(--c);

}
Aquí mandamos a inprimir in
INSTITUTO TECNOLÓGICO SUPERIOR DE TAMAZUNCHALE
INGENIERÍA EN SISTEMAS COMPUTACIONALES

Formato para prácticas de laboratorio

5.-RESULTADOS

Por medio de esta práctica, el alumno aprendió la utilización de java para la solución de problemas.

Los resultados del primer programa son:

Practica_01

Practica_02
INSTITUTO TECNOLÓGICO SUPERIOR DE TAMAZUNCHALE
INGENIERÍA EN SISTEMAS COMPUTACIONALES

Formato para prácticas de laboratorio

Practica_03

Practica_04
INSTITUTO TECNOLÓGICO SUPERIOR DE TAMAZUNCHALE
INGENIERÍA EN SISTEMAS COMPUTACIONALES

Formato para prácticas de laboratorio

6.- CONCLUSIONES
En esta unidad se vio lo qué es la recursividad y porque es la propiedad de que un
subprograma o rutina puede llamarse a sí mismo. Usando la recursividad, la solución de
un problema se reduce a un problema que es esencialmente el mismo pero un poco
menos complejo. Con cada fórmula nueva nos acercamos más a la situación final, y lo
que más me gusta hacer es el ejercicio de sumar números enteros.

7.-REFERENCIAS BILIOGRÁFICAS

Cairo Battistutti, O., (2005), Metodología de la Programación, Algoritmos Diagrama


de Flujo y Programas, Ciudad, Estado, Provincia, País: Alfaomega. ISBN 970-15-
1100-X

Deitel P., Deitel H. (2013). Como programar en java. 9a. Edición. Pearson.

Luis Joyanes Aguilar, Fundamentos de Programación, Ed. Prentice Hall.

Indicadores C, D, y E para obtenerlo se requieren 80 puntos. Fecha de entrega

También podría gustarte