You are on page 1of 7

PRÁCTICA

UNIVERSIDAD CATÓLICA DE SANTA MARÍA


Ingeniería Industrial – V Semestre

Guía de Prácticas de Computación Aplicada 4


Uso de Funciones
OBJETIVOS
• Entender los algoritmos de repetición fija y variable For y While

RECURSOS
• Guía de Prácticas.
• Computadora
• Phyton

 DURACIÓN DE LA PRÁCTICA
• Una sesión (2 horas).

INFORME
El informe deberá incluir:
• Carátula.
• Desarrollo de los ejercicios propuestos
Se tendrá en cuenta el orden, la claridad, la gramática y la ortografía en cada caso.

MARCO TEÓRICO
En programación, una función es un bloque de código que realiza una tarea específica y puede
ser reutilizado en diferentes partes del programa. Las funciones son una parte fundamental de
la programación estructurada y se utilizan para dividir un programa en partes más pequeñas y
manejables, lo que facilita su comprensión y mantenimiento.

Las funciones tienen un nombre y pueden recibir uno o varios parámetros de entrada. Estos
parámetros son variables que se utilizan dentro de la función para realizar las operaciones
necesarias. Una vez que la función ha realizado su tarea, puede devolver un valor o
simplemente terminar su ejecución.

Las funciones pueden ser definidas por el programador o pueden ser proporcionadas por una
biblioteca de funciones. Las bibliotecas de funciones son conjuntos de funciones predefinidas
que se pueden utilizar en un programa y que se proporcionan como parte del lenguaje de
programación o como una extensión del mismo.
Las funciones son útiles en programación porque permiten la modularidad del código, lo que
significa que se pueden crear pequeñas piezas de código que realizan una tarea específica y se
Computación Aplicada

pueden utilizar en diferentes partes del programa. Esto hace que el código sea más fácil de
leer, entender, mantener y reutilizar.

Además, las funciones también permiten la abstracción, que es la capacidad de ocultar los
detalles de implementación de una tarea y ofrecer una interfaz sencilla y fácil de usar. Esto
significa que los usuarios de la función no necesitan conocer cómo funciona internamente la
función, sino simplemente cómo utilizarla y qué resultados esperar.

En resumen, las funciones son una herramienta fundamental en programación que permiten la
modularidad, abstracción y reutilización del código, lo que hace que el código sea más fácil
de leer, entender y mantener.

SINTAXIS DE LA FUNCION
La sintaxis básica de una función en la mayoría de los lenguajes de programación es la
siguiente:
def nombre_funcion(parametro1, parametro2, ..., parametroN):
# Código de la función
# que puede utilizar los parámetros
# y realizar alguna tarea
return resultado

Donde:

- `def` es la palabra reservada que se utiliza para definir una función.


- `nombre_funcion` es el nombre que se le da a la función, que debe ser descriptivo y en
minúsculas.
- `parametro1`, `parametro2`, ..., `parametroN` son los parámetros de entrada que puede
recibir la función. Estos pueden ser opcionales y se definen entre paréntesis, separados por
comas.
- El código de la función va dentro de un bloque de indentación y puede utilizar los
parámetros de entrada para realizar alguna tarea.
- La instrucción `return` se utiliza para devolver un resultado, que puede ser un valor, una
lista, un diccionario, etc.

Es importante señalar que la sintaxis puede variar ligeramente dependiendo del lenguaje de
programación que se utilice, pero el concepto básico de una función es el mismo.

BIBLIOTECA DE FUNCIONES
Algunos ejemplos de bibliotecas de funciones populares en Python son:

1. math: Proporciona funciones matemáticas como logaritmos, exponenciales, funciones


trigonométricas, etc.
2. numpy: Biblioteca de cálculo numérico que proporciona funciones para trabajar con
matrices y arreglos multidimensionales.
3. pandas: Biblioteca para análisis y manipulación de datos que proporciona funciones para
trabajar con datos en formato de tabla.
4. matplotlib: Biblioteca para visualización de datos que proporciona funciones para crear
gráficos y diagramas.
5. random: Proporciona funciones para generar números aleatorios.
6. datetime: Proporciona funciones para trabajar con fechas y horas.

6
Computación Aplicada

Ejemplo1

Si deseas utilizar la biblioteca math, puedes importarla al inicio de tu script de la siguiente


manera:

import math
# Ejemplo de uso de la función sin()
x = math.sin(45)
print(x)

Esto importará la biblioteca math y permitirá utilizar las funciones incluidas en ella, como la
función sin() que se utiliza para calcular el seno de 45 grados.

Ejemplo2
Uso de la función random para generar un número aleatorio entre dos valores especificados:

import random
# Generar un número entero aleatorio entre 1 y 10
numero_aleatorio = random.randint(1, 10)
# Imprimir el número generado
print("El número aleatorio generado es:", numero_aleatorio)

En este ejemplo, se importa la biblioteca random y se utiliza la función randint() para


generar un número entero aleatorio entre 1 y 10. Luego, se imprime el número generado.
Cada vez que se ejecuta este programa, se genera un número aleatorio diferente entre 1 y 10.

UTILIDAD DE LAS FUNCIONES

Un ejemplo útil para explicar la importancia de las funciones en programación es el de un


programa que requiere realizar una misma operación matemática varias veces.
Imagina que tienes un programa que calcula el promedio de 10 números ingresados por el
usuario. Si no utilizas funciones, tendrías que escribir el mismo código para realizar la suma y
el cálculo del promedio de cada número, lo que haría el código muy repetitivo y difícil de
mantener.

En cambio, si utilizas funciones, puedes escribir una sola vez el código para realizar la suma y
el cálculo del promedio, y llamar a esta función cada vez que necesites realizar esta
operación; de esta manera, el código es más legible, más fácil de mantener y menos propenso
a errores; además, si en el futuro necesitas realizar una operación similar en otro programa,
puedes reutilizar la misma función en lugar de volver a escribir el código desde cero.

CASO1:
Cuando se necesite crear un programa para calcular el precio total de una compra en una
tienda en línea. Para esto, necesitas calcular el precio de cada producto, sumarlos y luego
aplicar un descuento si el total supera cierta cantidad.
Sin utilizar funciones, podrías escribir el siguiente código:

6
Computación Aplicada

producto1 = 10
producto2 = 20
producto3 = 30

precio_total = producto1 + producto2 + producto3

if precio_total > 50:


precio_total = precio_total * 0.9

print("El precio total de la compra es:", precio_total)

Este código funciona bien para una compra con tres productos, pero ¿qué sucede si la compra
tiene más productos? Tendrías que agregar más variables y repetir el mismo código para
calcular el precio de cada producto y luego sumarlos. Esto hace que el código sea difícil de
leer y mantener.
En cambio, si utilizamos funciones, podemos escribir el mismo programa de la siguiente
manera:

def calcular_precio_total(productos):
precio_total = sum(productos)
if precio_total > 50:
precio_total = precio_total * 0.9
return precio_total

productos = [10, 20, 30]


precio_total = calcular_precio_total(productos)

print("El precio total de la compra es:", precio_total)

Aquí hemos creado una función llamada calcular_precio_total que toma una lista de
productos como argumento, calcula el precio total, y aplica un descuento si el total supera
cierta cantidad. Luego, simplemente llamamos a la función pasándole la lista de productos
como argumento.
Este código es más fácil de leer y mantener, y nos permite calcular el precio total de una
compra con cualquier cantidad de productos simplemente pasando una lista como argumento
a la función calcular_precio_total. Además, podemos reutilizar esta función en otros
programas si necesitamos calcular el precio total de una compra en otra tienda en línea.

CASO2:
Cuando se necesite el cálculo de la suma de los números del 1 al 100
Se podría empezar realizando el siguiente código que realiza esta operación sin el uso de
funciones. Sería algo así:
suma = 0
for x in range(1, 101):
suma =suma+x
print(suma)

6
Computación Aplicada

OJO pero que sucedería si se necesitara calcular la suma de los números del 1 al 1000, o del 1
al 10,000. ¿Se tendría que escribir todo el código de nuevo?
Aquí es donde vemos la importancia del concepto de funciones.
Se debe definir una función que calcule la suma de los números del 1 al n, donde n es un
parámetro que se le pasa a la función.

def suma_n(n):
suma = 0
for x in range(1, n+1):
suma += x
return suma

Luego, se podría llamar a esta función con diferentes valores de n para calcular la suma de los
números del 1 al n, sin tener que escribir todo el código de nuevo.
La función quedaría de la siguiente manera
def suma_n(n):
suma = 0
for x in range(1, n+1):
suma += x
return suma
fin=int(input("Ingrese dato final: "))
print(suma_n(fin))

Usando funciones podemos reducir la duplicación de código y hacer que el código sea más
fácil de leer y mantener. Además, las funciones pueden ser utilizadas para generalizar un
cálculo para diferentes entradas, en lugar de tener que escribir un código separado para cada
caso.

ACTIVIDADES DE LA PRÁCTICA
Ejercicios Desarrollados
Ejemplo 1. Calcular el área de un círculo:
import math

def area_circulo(radio):
area = math.pi * (radio ** 2)
return area

radio = float(input("Introduce el radio del círculo: "))


print("El área del círculo es: ", area_circulo(radio))

Ejemplo 2. Calcular el factorial de un número utilizando recursión:


def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
n = int(input("Introduce un número: "))
print("El factorial de", n, "es:", factorial(n))

6
Computación Aplicada

Ejemplo 3. Ordenar una lista de números de menor a mayor:

def ordenar_lista(lista):
for i in range(len(lista)):
for j in range(i, len(lista)):
if lista[i] > lista[j]:
lista[i], lista[j] = lista[j], lista[i]
return lista

lista = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
print("Lista original:", lista)
print("Lista ordenada:", ordenar_lista(lista))

Ejemplo 4. Calcular el promedio de una lista de números:

def promedio(lista):
return sum(lista) / len(lista)

lista = [2, 4, 6, 8, 10]


print("La lista es:", lista)
print("El promedio de la lista es:", promedio(lista))

Ejemplo 5. Validar si una cadena de texto es un palíndromo (es una palabra o frase que se lee
igual en un sentido que en otro)

def es_palindromo(cadena):
cadena = cadena.replace(" ", "").lower()
return cadena == cadena[::-1]

cadena = input("Introduce una cadena de texto: ")


if es_palindromo(cadena):
print("La cadena es un palíndromo")
else:
print("La cadena no es un palíndromo")

EJERCICIOS PROPUESTOS
1. Crea una función que tome dos números como entrada y los multiplique. Luego, llama a la
función con diferentes pares de números y comprueba que se esté realizando la multiplicación
correctamente.
2. Crea una función que tome dos números como entrada y multiplique el primero por el
segundo. Si no se proporciona el segundo número, la función debe utilizar un valor por
defecto de 2. Luego, llama a la función varias veces, proporcionando diferentes números como
entrada.
3. Crea una función que tome dos números como entrada y devuelva el resultado de la
multiplicación. Luego, llama a la función y muestra el resultado por pantalla.

6
Computación Aplicada

4. Crea una función que tome un número variable de argumentos y devuelva su suma. Luego,
llama a la función con diferentes números de argumentos y comprueba que se estén sumando
correctamente.
5. Desarrolla una función que reciba un número entero y devuelva una cadena de texto con el
número escrito en letras (por ejemplo, si el número es 123, la función debe devolver "ciento
veintitrés"). La función debe funcionar para números entre 1 y 999.

REFERENCIAS BIBLIOGRÁFICAS
Fundamentos de programación Luis Joyanes Aguilar 4ta edición.

You might also like