Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Subprogramas
• Solución: subprogramas
un subprograma soluciona una parte del
problema inicial (facilita la estructuración)
pueden ser utilizados desde distintos puntos de
un programa (evitan la repetición de código)
Maximiliano Paredes Velasco 3
4.1 Estructura de
subprogramas
Dibujar el patrón
––
|
|
––
|
|
––
• Funciones
devuelven exactamente un valor. Dicho valor se
determina, asignándolo al “nombre” de la función
las llamadas se tratan como expresiones (de igual
manera que si estuvieran predefinidas en Pascal)
• Parámetros:
permiten pasar información a la función (o en
general, al subprograma)
• Procedimientos
parámetros
[Cuerpo de instrucciones]
}
• Declaraciones y definiciones
Idénticas que las del programa:
tipos
constantes
Propios del subprograma. Sólo
variables
desde él se accede a ellos
procedimientos
funciones
Estas definiciones + parámetros constituyen los
elementos locales del subprograma
Maximiliano Paredes Velasco 11
Estructura sintáctica:
cuerpo
• Cuerpo de Instrucciones
secuencia de instrucciones
• Procedimientos:
igual que las instrucciones predefinidas
Identificador ( Expresión )
de proc.
,
• Funciones:
igual que las funciones predefinidas
P();
…
} Maximiliano Paredes Velasco 14
Semántica: llamada a
función
…
declaraciones
int F (int p){
int t;
t=25+p;
….. (2)
return expresión;
} (1)
int main(){ (3)
…
iden=F(34);
… üiden ha de ser de un tipo compatible con tipoF
} Maximiliano Paredes Velasco 15
4.2 Subprogramas con
parámetros
t= TanDeGrados(a);
parámetros de salida “
parámetros de entrada/salida “
• Restricciones:
los parámetros reales pueden ser expresiones
parámetros formales y reales han de ser del
mismo tipo
• Semántica:
los parámetros reales sustituyen directamente a
los parámetros formales (es decir: los parámetros
formales son sinónimos de los parámetros reales)
el subprograma va modificando dichos
parámetros
aunque al finalizar el subprograma se pierde su
estado de cómputo local, cualquier cambio hecho
en el parámetro formal SI quedará reflejado en el
parámetro real Maximiliano Paredes Velasco 25
Mecanismo de paso por
referencia
• Restricciones:
sólo se permiten variables como parámetros
reales
parámetros formales y reales han de ser de tipos
idénticos
• Aspectos
Estructura de bloques
Vigencia de objetos
Ámbito de identificadores
Efectos laterales
• Efectos laterales:
los efectos laterales se producen al asignar
valores a variables globales o no-locales a un
subprograma
aunque dichas asignaciones son sintácticamente
correctas, no se deben usar porque:
disminuyen la reusabilidad del subprograma
dificultan la depuración y verificación del
programa