Está en la página 1de 4

Universidad Nacional Jorge Basadre Grohmann Fundamentos de Programación

Práctica 04: Funciones y Procedimientos

1. Funciones

Las funciones son una herramienta indispensable para el programador, tanto las funciones
creadas por él mismo como las que le son proporcionadas por otras librerías, cualquiera que sea
el caso, las funciones permiten automatizar tareas repetitivas, encapsular el código que
utilizamos, e incluso mejorar la seguridad, confiabilidad y estabilidad de nuestros programas.
Dominar el uso de funciones es de gran importancia, permiten modularizar nuestro código,
separarlo según las tareas que requerimos, por ejemplo, una función para abrir, otra para cerrar,
otra para actualizar, etc.

Las funciones son un conjunto de procedimiento encapsulados en un bloque, usualmente reciben


parámetros, cuyos valores utilizan para efectuar operaciones y adicionalmente retornan un valor.
Esta definición proviene de la definición de función matemática la cual posee un dominio y un
rango, es decir un conjunto de valores que puede tomar y un conjunto de valores que puede
retornar luego de cualquier operación.

2. Procedimientos

Los procedimientos son básicamente lo un conjunto de instrucciones que se ejecutan sin retornar
ningún valor, hay quienes dicen que un procedimiento no recibe valores o argumentos, sin
embargo, en la definición no hay nada que se lo impida. En el contexto de C++ un
procedimiento es básicamente una función void que no nos obliga a utilizar una sentencia return.

3. Declarando funciones y procedimientos

La sintaxis para declarar una función o procedimiento es bastante sencilla, he aquí un

ejemplo:

tipo nombreFuncion([tipo nombreArgumento,[tipo nombreArgumento]...])


{
/*
* Bloque de instrucciones
*/
return valor;
}

Ing. Josué G. Valdez Ramirez Pág. 1


Universidad Nacional Jorge Basadre Grohmann Fundamentos de Programación

Recordemos que una función siempre retorna algo, por lo tanto, es obligatorio declararle
un tipo (el primer componente de la sintaxis anterior), luego debemos darle un nombre a
dicha función, para poder identificarla y llamarla durante la ejecución, después al interior
de paréntesis, podemos poner los argumentos o parámetros.

3.1. Acerca de los parámetros o argumentos

 Una función o procedimiento pueden tener cualquier número de parámetros, aunque


habitualmente no suelen tener más de 4 o 5.
 Cada parámetro va separado por una coma.
 Los argumentos de una función tienen un tipo y un nombre, independientemente del
tipo de la función.

3.2. Acerca de return

 Cualquier instrucción que se encuentre después de la ejecución de return NO será


ejecutada. Es común encontrar funciones con múltiples sentencias return al interior
de condicionales, pero una vez que el código ejecuta una sentencia return lo que haya
de allí hacia abajo no se ejecutará.
 El tipo del valor que se retorna en una función debe coincidir con el del tipo
declarado a la función, es decir si se declara int, el valor retornado debe ser un
número entero.

4. Ejemplos

4.1. Ejemplos de funciones

int funcionEntera()//Función sin parámetros


{
int suma = 5+5;
return suma; //Acá termina la ejecución de la función
return 5+5;//Este return nunca se ejecutará
//Intenta intercambiar la línea 3 con la 5
int x = 10; //Esta línea nunca se ejecutará
}

Ing. Josué G. Valdez Ramirez Pág. 2


Universidad Nacional Jorge Basadre Grohmann Fundamentos de Programación

char funcionChar(int n)//Función con un parámetro


{
if(n == 0)//Usamos el parámetro en la función
{
return 'a'; //Si n es cero retorna a
//Notar que de aquí para abajo no se ejecuta nada más
}
return 'x';//Este return sólo se ejecuta cuando n NO es cero
}

4.2. Ejemplos de procedimientos

void procedimiento(int n, string nombre)


{
if(n == 0)
{
cout << "hola" << nombre;
return;
}
cout << "adios" << nombre;
}

5. Tarea (Debe hacer uso de funciones y/o procedimientos)

1. Elaborar un programa que permita calcular la siguiente suma para un valor n ingresado

1! 2! 3! 𝑛!
𝑆= + + +⋯+
2 4 6 2𝑛
2. Un profesor desea implementar un algoritmo que le permita bonificar equitativamente a
todos sus alumnos de acuerdo a la nota conseguida en un examen de la siguiente forma.
Si la nota fuera menor que 5 se bonificará con 3 puntos, si la nota fuera mayor o igual
que 5, pero menor que 10 se bonifica con 2 puntos, y si fuera mayor o igual que 10 pero
menor que 15 se bonifica con 1 punto, y si la nota fuera mayor o igual que 15 pero
menor o igual a 20 se le descuenta el residuo de la nota entre

3. Elaborar un programa que muestre el nombre, nota, bonificación y nota final de 5


alumnos según la información detallada previamente.
Ing. Josué G. Valdez Ramirez Pág. 3
Universidad Nacional Jorge Basadre Grohmann Fundamentos de Programación

4. Determinar el importe a pagar por un alumno de un instituto cuya cuota tiene un


porcentaje de descuento que se establece en la siguiente tabla y está en función al
colegio de procedencia de alumnos

Instituto
Colegio A B C
Nacional 50 40 30
Particular 25 20 15

5. El programa deberá permitir dar la opción al usuario de volver a evaluar a otro alumno

6. Elaborar un programa que permita calcular los números primos menores a “n”, donde “n”
es un valor ingresado por el teclado.

7. Elaborar un menú como el que se muestra a continuación e implemente cada opción


a. MENU
b. [S]uma
c. [R]esta
d. [M]ultiplicacion
e. [D]ivision
f. [F]actorial
g. [P]otencia

8. Crear un programa que genere y muestre en pantalla la serie Fibonacci, el programa


deberá preguntar si desea mostrar el resultado de la suma de sus terminos

Ing. Josué G. Valdez Ramirez Pág. 4