Documente Academic
Documente Profesional
Documente Cultură
DITE-UNEFM
______________________________________________________________________________________
PROTOTIPO: Se sitúan normalmente al inicio del programa, antes la función principal main(). Los
prototipos son la declaración de una función y proporcionan información al compilador para
verificar que la función está siendo llamada correctamente, con respecto al número y tipo de los
parámetros y tipo devuelto por la función.
LLAMADA DE UNA FUNCIÓN: La función llamada que recibe el control del programa se ejecuta
desde el principio y cuando termina (se alcanza la sentencia return, o la llave de cierre ( } ) si se
omite return) el control del programa vuelve y retorna a la función donde fue llamada (main() u
otra función )
A las variables que declaramos fuera del cuerpo de cualquier función se dice que tienen un alcance
global y por lo tanto están disponibles para cualquier función del programa, incluyendo a la
función main( ).
PASE POR VALOR Y REFERENCIA: En la mayoría de los lenguajes hay dos formas de pasar las
variables a una función, por valor o por referencia.
• Por valor significa que la función (o subrutina) recibe sólo una copia del valor que tiene la
variable, o sea que no la puede modificar.
• Por referencia significa que se pasa la posición de memoria donde está guardada la
variable, por lo que la función puede saber cuánto vale, pero además puede modificarla de
cualquier manera.
Las distintas versiones de C pasan normalmente los parámetros a funciones y subrutinas internas
por valor. Se puede pedir que los pase por referencia utilizando &. Otra forma de lograr lo mismo
es usando punteros, para manejar la dirección de memoria de las variables directamente.
• Por valor:
int Pase_Val(int x);
• Por referencia:
int Pase_Ref(int &x);
Al igual que otros arreglos, las matrices pueden emplearse como argumentos en una función. Para
ello se toma en cuenta lo siguiente.
En el prototipo
float promedio (float M[ 50][50 ], int n);//la dimensión está definida
float promedio (float M[ ][50 ], int n);//la dimensión no está definida
En la llamada
promedio ( M, n);//para ambos casos anteriores
En la Definición
float promedio (float M[ 50][50 ], int n) { … }//la dimensión está definida
float promedio (float M[ ][50 ], int n) { … } //la dimensión no está definida
1. Escribir un programa que emplee una función que tenga dos argumentos de tipo entero y
que retorne el mayor de ambos números.
2. Escriba una función múltiplo que determine para un par de enteros, si el segundo de ellos
es múltiplo del primero. La función debe tomar dos argumentos enteros y regresar 1
( verdadero ) si el segundo es un múltiplo del primero, y 0 ( falso ) de no ser así.
3. Elabore un programa que emplee una función para leer el código de un artículo, su nombre
y precio, y en otra función solicitar la tasa de inflación y un año futuro para calcular el
precio de ese artículo en ese año:
Precio_Futuro = Precio_Actual*(1+tasa)*(año_futuro-año_actual)
5. Escriba una función que tenga un argumento de tipo entero y que devuelva un valor lógico
(de tipo bool), true si el número es primo y false si es compuesto.
7. Realice un programa que lea dos números complejos (a,b) y (c,d) y emplee una función
para calcular e imprimir el producto de los mismos.
(a,b)*(c,d)=(ac-bd,ad+bc)
* * * *
* * * *
* * * *
* * * *
10.Escriba un programa que cree una tabla de conversión de grados Fahrenheit a Centígrados.
Considere valores de -30 grados a 30 grados en incremento de 5.
14. Generar un vector de manera que cada elemento venga dado por: cos(i/n)+i3. siendo n el
número de elementos e i la variable de recorrido.
15.Elaborar un programa que emplee varias funciones para efectuar el cálculo del área de
varias figuras geométricas (cilindro, cuadrado, triángulo rectángulo, rombo), y muestre las
distintas opciones a través de un menú para que el usuario seleccione la figura geométrica
de la que desea saber el área.