Ensayo funciones

PaoChamba 2,158 views 2 slides Jan 31, 2013
Slide 1
Slide 1 of 2
Slide 1
1
Slide 2
2

About This Presentation

No description available for this slideshow.


Slide Content

Por: Paola Chamba
SEMEJANZAS
Ambos tipos de subrutinas son definidas por el usuario (el programador)
Ambos tipos pueden definirse para que acepten argumentos (parámetros)
Ambos tipos pueden invocarse de diversas formas para su ejecución y desde varios puntos
dentro del programa principal
Ambos tipos pueden retornar resultados al punto de llamada
Ambos tipos pueden agruparse en librerías de subrutinas que otros programas pueden incluir
Subprogramas: Funciones
INTRODUCCIÓN
Soluciona problemas complejos al dividirlos en subprogramas y luego dividirlos estos en otros más simples,
hasta que estos sean más fáciles de resolver. Esta técnica se llama “divide y vencerás”. El problema principal
denominado controlador o conductor (drive) y la solución de los subproblemas conocidos como
procedimientos (subrutinas) o funciones.

SUBPROGRAMAS O SUBALGORITMOS:
La resolución de los problemas complejos se facilita considerablemente si se dividen en problemas más pequeños
(subproblemas). La solución de estos subproblemas se realiza con sub algoritmos.
Un subprograma, sin embargo se utiliza por el programa para un propósito específico. El subprograma recibe datos
desde el programa y le devuelve resultados. Se dice que el programa principal llama o invoca al subprograma. El
subprograma ejecuta una tarea, a continuación devuelve el control al programa. Cada vez que el subprograma es
llamado, el control retorna al lugar desde donde fue hecha la llamada.













Llamada Retorno


Funciones y Procedimientos

DIFERENCIAS
FUNCIÓN PROCEDIMIENTO
Las funciones sólo pueden retornar un único valor los procedimientos más de uno
Las funciones sólo aceptan parámetros de entrada Los procedimientos aceptan tanto parámetros de entrada como
de entrada/salida.
Las funciones no. Los procedimientos pueden contener otras subrutinas
Las funciones no Los procedimientos son autónomos
Una función debe especificar el tipo de dato a
devolver
Los procedimientos no
Las funciones se destinan para realizar una única
tarea.
Los procedimientos para más de una.
Las funciones deben ser cortas Los procedimientos suelen ser largos

VARIABLES LOCALES Y GLOBALES
Pr
og
ra
ma

Su
bp
rog
ra
ma
s

Locales
- Son definidas dentro de cada función o
procedimiento, y solo se pueden usar en
la función o procedimiento en la que son
declaradas

Globales
- Definidas al comienzo del programa, que se
puede usar a lo largo de todo el programa, es
decir, dentro del algoritmo principal y en
cada función definida en el programa

PASO POR VALOR
El paso de parámetros por valor consiste en copiar el contenido de
la variable que queremos pasar en otra dentro del ámbito local de
la subrutina, consiste pues en copiar el contenido de la memoria
del argumento que se quiere pasar a otra dirección de memoria,
correspondiente al argumento dentro del ámbito de dicha
subrutina. Se tendrán dos valores duplicados e independientes,
con lo que la modificación de uno no afecta al otro.
PASO POR REFERENCIA
El paso de parámetros por referencia consiste en proporcionar a la
subrutina a la que se le quiere pasar el argumento la dirección de
memoria del dato. En este caso se tiene un único valor referenciado
(o apuntado) desde dos puntos diferentes, el programa principal y la
subrutina a la que se le pasa el argumento, por lo que cualquier
acción sobre el parámetro se realiza sobre la misma posición de
memoria



EJEMPLO:
#include<iostream>
#include<cmath>
using namespace std;
float media(int a, intb,int c); // variable global
int main()
{
inta,b,c; //variable local
floatresultado; //variable local
cout<<"ingrese el 1 numero:";
cin>>a;
cout<<"ingrese el 2 numero:";
cin>>b;
cout<<"ingrese el 2 numero:";
cin>>c;
cout<<"la media entre "<<a<<", "<<b<<" y "<<c<<" es: "<<media( a, b, c);
}
float media(int a, int b, int c)
{
float resultado;
resultado=(a+b+c)/3;
return resultado;
}
COMUNICACIÓN CON SUBPROGRAMAS: PASO DE PARAMETROS
Cuando un programa llama a una subrutina, la información se comunica a través de losparámetros y se establece
una correspondencia automática entre los parámetros formales y los actuales.Los actuales son sustituidos o
utilizados en lugar de los parámetros formales. La correspondencia entrelos parámetros se establece aparejando los
parámetros actuales y formales según su posición en la listade parámetros.Los parámetros se pueden clasificar
como:

Entradas: son parámetros que sólo aportan el valor que tienen como entrada al subprograma
Salidas: se usan sólo y exclusivamente para devolver resultados a través de ellos.
Entradas/Salidas:aporta información cuando se llama al subprograma y devuelve, a través de él, los resultados
cuando se termina la ejecución del subprograma