Está en la página 1de 3

Universidad Autónoma de Nuevo León

Facultad de Ingeniería Mecánica y Eléctrica

Alumno: Alberto Alvarez Martínez


Matricula: 1853272
Carrera: IAS
Hora: N3
Materia: LAB. De lenguaje de programación

C.U Niños Héroes, San Nicolas de los Garza, N.L


¿Qué es el flujo de control?
El control de flujo se refiere al orden en que se ejecutan las instrucciones que tenemos en
el programa.
El orden puede ser ascendente, descendente o podemos ejecutar un conjunto de
instrucciones alguna determinada cantidad de veces en donde se modifique algunos
valores y hasta que el valor cumple alguna condición se dejen de ejecutar esas
instrucciones.
Determinar el orden de las instrucciones depende primordialmente de el algoritmo que
queremos desarrollar en el programa.

¿Qué es una subrutina?


En informática, una subrutina o subprograma (también
llamada procedimiento, función, rutina o método), como idea general, se presenta como
un subalgoritmo que forma parte del algoritmo principal, el cual permite resolver una tarea
específica. Algunos lenguajes de programación, como Visual Basic .NET o Fortran,
utilizan el nombre función para referirse a subrutinas que devuelven un valor.
Se le llama subrutina a un segmento de código separado del bloque principal, el cual
puede ser invocado en cualquier momento desde esta u otra subrutina.
Una subrutina, al ser llamada dentro de un programa, hace que el código principal se
detenga y se dirija a ejecutar el código de la subrutina.

¿Qué es recursión?
Recursión es, en ciencias de la computación, una forma de atajar y solventar problemas.
De hecho, recursión es una de las ideas centrales de ciencia de computación. Resolver
un problema mediante recursión significa que la solución depende de las soluciones de
pequeñas instancias del mismo problema.
La mayoría de los lenguajes de programación dan soporte a la recursión permitiendo a
una función llamarse a sí misma desde el texto del programa. Los lenguajes
imperativos definen las estructuras de loops como while y for que son usadas para
realizar tareas repetitivas. Algunos lenguajes de programación funcionales no definen
estructuras de loops, sino que posibilitan la recursión llamando código de forma repetitiva.
La teoría de la computabilidad ha demostrado que estos dos tipos de lenguajes son
matemáticamente equivalentes, es decir que pueden resolver los mismos tipos de
problemas, aunque los lenguajes funcionales carezcan de las típicas
estructuras while y for.

¿Cuándo se puede utilizar la recursión?


Factible de utilizar recursividad
• Para simplificar el código.
• Cuando la estructura de datos es recursiva ejemplo: árboles.
LA RECURSIVIDAD SE DEBE USAR CUANDO SEA REALMENTE NECESARIA, ES
DECIR, CUANDO NO EXISTA UNA SOLUCIÓN ITERATIVA SIMPLE. subproblemas más
pequeños, generalmente del mismo tamaño, resolver los subproblemas y entonces
combinar sus soluciones para obtener la solución del problema original.
¿En qué casos NO SE APLICA la recursión?
Cuando NO aplicar
Ejemplos de algoritmos donde no sirve la recursión
 Números Fibonacci
o Los mismos subproblemas se repiten
 Distancia de edición
o Más eficiente con programación dinámica

Mencione un ejemplo de recursión, y agregue el código.


Un ejemplo es el cálculo de la factorial de un número entero. La factorial de un número se
define como ese número multiplicado por el anterior, éste por el anterior, y así
sucesivamente hasta llegar a 1. Así, por ejemplo, la factorial del número 5
sería: 5x4x3x2x1 = 120.

Código:

function factorial(n){
var res = 1;
for(var i=n; i>=1; i--){
res = res * i;
}
return res;
}

También podría gustarte