Práctica Semana 10

Anuncio
Práctica Semana 10
Funciones- Continuación.
 El motivo de la “funcionalización” de un programa :
o Esta bajo el enfoque “Divide y vencerás”.
o Hace que el desarrollo del mismo sea más manipulable.
o La reutilización del software, el uso de funciones
existentes, como bloques constructivos para crear nuevos
programas.
o Técnica de abstracción: programas creados partiendo de
funciones estandarizadas, que ejercen tareas específicas,
en vez de utilizar código personalizado.
 Las funciones permiten al programador “modulizar” un
programa.
 La gran mayoría de las funciones tienen una lista de
parámetros.
 Las variables declaradas en una función son variables locales,
es decir son conocidas sólo en la función en la cual están
definidas.
 Los parámetros proporcionan la forma de comunicar
información entre funciones.
 Los parámetros de una función también son variables locales.
 Llamadas a funciones, argumentos:
o Por valor: debería ser utilizada siempre que la función
llamada no necesite modificar el valor de la variable
original del llamador.
o Por referencia: debe ser utilizada sólo en funciones
confiables, que necesitan modificar las variables
originales. En C el pase por referencia se hace mediante
la utilización de operadores de dirección (* y &) y de
indirección (*).
 Reglas de alcance: Porción del programa en el cual dicho
identificador puede ser referenciado.
 Cómo pasar arreglos a una función:
o Prototipo : int modifarreglo ( tipo [ ], int)
o En la llamada especifique el nombre del arreglo, sin
corchete alguno. Ejemplo:
 int tempxhora[24];
 ……
 modifarreglo(tempxhora,24) /* el nombre del
arreglo es la dirección del primer elemento de dicho
arreglo.*/
1. Escriba una función en C, que recibe como parámetros un arreglo
de n elementos desordenado y regresa el arreglo ordenado. Utilice el
algoritmo de la Burbuja.
Protótipo:
Void burbuja(int [], int )
2. Escriba una función en C, que realiza la BUSQUEDA de un
elemento dado en un arreglo. Recibe como parámetros un arreglo de
n elementos desordenado y regresa la posición del elemento
busacado si existe y cero sino
Protótipo:
Int Busqueda(int [], int , int )
3. Modifique la función del ejercicio 2, de manera tal que realice la
búsqueda del elemento por el método dicotómico.
Protótipo:
Int Busqdicotom(int [], int , int )
4. Modifique la función escrita en el ejercicio 1 y mejórelo sabiendo
que al final del primer ciclo el elemento mayor se encuentra en el
lugar que le corresponde y así sucesivamente. Por lo tanto en cada
nuevo ciclo seguimos ordenando los n-1, n-2, n-3 … elementos
restantes.
Protótipo:
Void burbujamejor(int [], int )
5. Realice el programa que lee los valores de un arreglo, los ordena
utilizando la función Ordenburbuja que usted realizo en el ejercicio
4, luego lea un valor y realice la búsqueda del mismo utilizando la
función de Busqdicotom
Descargar