SlideShare una empresa de Scribd logo
1 de 7
ALUMNO: VICTOR ERAS
COMUNICACIÓN CON SUBPROGRAMAS:
 La comunicion se da cuando un programa
 llama a un subprograma, la información se
 comunica a través de la lista de
 parámetros y        se establece una
 correspondencia automática entre los
 parámetros formales y actuales. Los
 parámetros actuales son sustituidos o
 utilizados en lugar de los parámetros
 formales.
Sintaxis para el llamado de un
                 subprograma:
La declaración del subprograma se hace con:
procedimiento nombre (clase tipo_de_dato: F1
                            clase tipo_de_dato: F2
                             ..................
                             .......... ... ...
                             clase . . . .
Fin_procedimiento
 Y la llamada al subprograma con
  Llamar_a nombre (A1, A2, ...,An)
   Donde F1, F2, . . . Fn son los parámetros formales y A1,
A2, . . . . , An los parámetros actuales o reales.
Existen dos métodos para establecer
  la correspondencia de parámetros
• Correspondencia posicional: es la que se utiliza
  en C. La correspondencia se establece
  emparejando los parámetros reales y formales,
  según su posición en las listas. Fi se corresponde
  con Ai (F: formal, A: actual).
• Correspondencia por el nombre explicito o
  método de paso de parámetros por el nombre.
  En este método en las llamadas se indica
  explícitamente la correspondencia entre los
  parámetros reales y formales.
• SUB (Y=>B , X=>30);
LOS EFECTOS LATERALES
Las modificaciones que se produzcan mediante una
función o procedimiento en los elementos
situados      fuera del subprograma (función o
procedimiento) se denominan efectos laterales.
Aunque
en algunos casos los efectos laterales pueden ser
beneficiosos en la programación, es conveniente
no recurrir a ellos de modo general. Consideramos a
continuación los efectos laterales en
funciones y en procedimientos.
EFECTOS LATERALES EN FUNCIONES
• Efectos laterales en funciones: Una función toma los
  valores de los argumentos y devuelve un único valor.
  Sin embargo, al igual que en los procedimientos, una
  función puede hacer cosas similares a ellos.
• Una función puede tener parámetros variables,
  además de parámetros valor (no devuelven nada) en
  una lista de parámetros formales. Una función puede
  cambiar el contenido de una variable global y ejecutar
  instrucciones de E/S. Estas operaciones se conocen
  como parámetros laterales y se deben evitar.
EFECTOS LATERALES EN PROCEDIMIENTOS

• Efectos laterales en procedimientos: La
  comunicación del procedimiento con el programa
  se debe realizar atreves de parámetros. Si un
  procedimiento modifica una variable global
  (distinta de un parámetro actual) esto es un
  efecto lateral, por ello excepto en contadas
  ocasiones, no debe aparecer en la declaración del
  procedimiento. Si se necesita una variable
  temporal en un procedimiento es mejor utilizar
  una variable local, que habría que declarar en el
  procedimiento.

Más contenido relacionado

La actualidad más candente

Programación modular en Introducción a la Programación
Programación modular en Introducción a la ProgramaciónProgramación modular en Introducción a la Programación
Programación modular en Introducción a la ProgramaciónFacultad de Ciencias y Sistemas
 
POO: Encapsulamiento, principio de ocultación, recolección de basura
POO: Encapsulamiento, principio de ocultación, recolección de basuraPOO: Encapsulamiento, principio de ocultación, recolección de basura
POO: Encapsulamiento, principio de ocultación, recolección de basura1da4
 
10. aplicaciones de las pilas
10. aplicaciones de las pilas10. aplicaciones de las pilas
10. aplicaciones de las pilasAndreita Enriquez
 
Diseño de interface para pantallas táctiles. Touch Design vs. Click Design.
Diseño de interface para pantallas táctiles. Touch Design vs. Click Design.Diseño de interface para pantallas táctiles. Touch Design vs. Click Design.
Diseño de interface para pantallas táctiles. Touch Design vs. Click Design.Worköholics
 
Estructuras condicionales
Estructuras condicionalesEstructuras condicionales
Estructuras condicionaleswladimirclipper
 
Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Rommel Lòpez
 
Clase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptxClase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptxjgs07
 
Operaciones de Conjuntos
Operaciones de ConjuntosOperaciones de Conjuntos
Operaciones de Conjuntoscesarhum10
 

La actualidad más candente (20)

Diagrama de estado
Diagrama de estadoDiagrama de estado
Diagrama de estado
 
Programación modular en Introducción a la Programación
Programación modular en Introducción a la ProgramaciónProgramación modular en Introducción a la Programación
Programación modular en Introducción a la Programación
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
8 tipos variables constantes
8 tipos variables constantes8 tipos variables constantes
8 tipos variables constantes
 
Introduccion a python 3
Introduccion a python 3Introduccion a python 3
Introduccion a python 3
 
POO: Encapsulamiento, principio de ocultación, recolección de basura
POO: Encapsulamiento, principio de ocultación, recolección de basuraPOO: Encapsulamiento, principio de ocultación, recolección de basura
POO: Encapsulamiento, principio de ocultación, recolección de basura
 
Estructura datos pilas y colas
Estructura datos pilas y colasEstructura datos pilas y colas
Estructura datos pilas y colas
 
10. aplicaciones de las pilas
10. aplicaciones de las pilas10. aplicaciones de las pilas
10. aplicaciones de las pilas
 
Tipos de datos abstractos
Tipos de datos abstractosTipos de datos abstractos
Tipos de datos abstractos
 
Diseño de interface para pantallas táctiles. Touch Design vs. Click Design.
Diseño de interface para pantallas táctiles. Touch Design vs. Click Design.Diseño de interface para pantallas táctiles. Touch Design vs. Click Design.
Diseño de interface para pantallas táctiles. Touch Design vs. Click Design.
 
Funciones Internas
Funciones Internas Funciones Internas
Funciones Internas
 
Estructuras condicionales
Estructuras condicionalesEstructuras condicionales
Estructuras condicionales
 
C++ y sus librerias
C++ y sus libreriasC++ y sus librerias
C++ y sus librerias
 
Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)
 
Clase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptxClase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptx
 
Operaciones de Conjuntos
Operaciones de ConjuntosOperaciones de Conjuntos
Operaciones de Conjuntos
 
Curso de Python
Curso de PythonCurso de Python
Curso de Python
 
Programación - Matrices
Programación - Matrices Programación - Matrices
Programación - Matrices
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Recursividad
RecursividadRecursividad
Recursividad
 

Similar a Comunicación subprogramas y efectos laterales

Tema 7
Tema 7Tema 7
Tema 7UH
 
Funciones y Subrutinas
Funciones y SubrutinasFunciones y Subrutinas
Funciones y SubrutinasGabriel Parra
 
GRUPO 12 Ámbito: variables locales y globales
GRUPO 12  Ámbito: variables locales y globales GRUPO 12  Ámbito: variables locales y globales
GRUPO 12 Ámbito: variables locales y globales Rommel Lòpez
 
Funciones
FuncionesFunciones
Funcionesadark
 
Fundamentos de programación: Subprogramas
Fundamentos de programación: SubprogramasFundamentos de programación: Subprogramas
Fundamentos de programación: SubprogramasLuis Ortiz
 
Actividad 20
Actividad 20 Actividad 20
Actividad 20 luis-1995
 
Fundamentos de la programación
Fundamentos de la programaciónFundamentos de la programación
Fundamentos de la programaciónjuanyasa04
 
Funciones lenguaje c modulo4
Funciones lenguaje c modulo4Funciones lenguaje c modulo4
Funciones lenguaje c modulo4flaquita_dany
 
FUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE CFUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE Cflaquita_dany
 
Funciones con vectores y matrices1
Funciones con vectores y matrices1Funciones con vectores y matrices1
Funciones con vectores y matrices1Marlene Pallo
 

Similar a Comunicación subprogramas y efectos laterales (20)

Exposicion grupal
Exposicion grupalExposicion grupal
Exposicion grupal
 
Actividad grupal
Actividad grupalActividad grupal
Actividad grupal
 
Tema 7
Tema 7Tema 7
Tema 7
 
Funciones y Subrutinas
Funciones y SubrutinasFunciones y Subrutinas
Funciones y Subrutinas
 
GRUPO 12 Ámbito: variables locales y globales
GRUPO 12  Ámbito: variables locales y globales GRUPO 12  Ámbito: variables locales y globales
GRUPO 12 Ámbito: variables locales y globales
 
Funciones
FuncionesFunciones
Funciones
 
Unidad III
Unidad IIIUnidad III
Unidad III
 
Presentacion capitulo 6
Presentacion capitulo 6Presentacion capitulo 6
Presentacion capitulo 6
 
Fundamentos de programación: Subprogramas
Fundamentos de programación: SubprogramasFundamentos de programación: Subprogramas
Fundamentos de programación: Subprogramas
 
Presentacion
PresentacionPresentacion
Presentacion
 
SUBPROGRAMAS
SUBPROGRAMASSUBPROGRAMAS
SUBPROGRAMAS
 
Actividad 20
Actividad 20 Actividad 20
Actividad 20
 
Anexo1
Anexo1Anexo1
Anexo1
 
Funciones en C
Funciones en CFunciones en C
Funciones en C
 
FUNCIONES LENGUAJE C
FUNCIONES LENGUAJE CFUNCIONES LENGUAJE C
FUNCIONES LENGUAJE C
 
Fundamentos de la programación
Fundamentos de la programaciónFundamentos de la programación
Fundamentos de la programación
 
Funciones lenguaje c modulo4
Funciones lenguaje c modulo4Funciones lenguaje c modulo4
Funciones lenguaje c modulo4
 
FUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE CFUNCIONES EN LENGUAJE C
FUNCIONES EN LENGUAJE C
 
vectores y matrices
vectores y matricesvectores y matrices
vectores y matrices
 
Funciones con vectores y matrices1
Funciones con vectores y matrices1Funciones con vectores y matrices1
Funciones con vectores y matrices1
 

Comunicación subprogramas y efectos laterales

  • 2. COMUNICACIÓN CON SUBPROGRAMAS: La comunicion se da cuando un programa llama a un subprograma, la información se comunica a través de la lista de parámetros y se establece una correspondencia automática entre los parámetros formales y actuales. Los parámetros actuales son sustituidos o utilizados en lugar de los parámetros formales.
  • 3. Sintaxis para el llamado de un subprograma: La declaración del subprograma se hace con: procedimiento nombre (clase tipo_de_dato: F1 clase tipo_de_dato: F2 .................. .......... ... ... clase . . . . Fin_procedimiento Y la llamada al subprograma con Llamar_a nombre (A1, A2, ...,An) Donde F1, F2, . . . Fn son los parámetros formales y A1, A2, . . . . , An los parámetros actuales o reales.
  • 4. Existen dos métodos para establecer la correspondencia de parámetros • Correspondencia posicional: es la que se utiliza en C. La correspondencia se establece emparejando los parámetros reales y formales, según su posición en las listas. Fi se corresponde con Ai (F: formal, A: actual). • Correspondencia por el nombre explicito o método de paso de parámetros por el nombre. En este método en las llamadas se indica explícitamente la correspondencia entre los parámetros reales y formales. • SUB (Y=>B , X=>30);
  • 5. LOS EFECTOS LATERALES Las modificaciones que se produzcan mediante una función o procedimiento en los elementos situados fuera del subprograma (función o procedimiento) se denominan efectos laterales. Aunque en algunos casos los efectos laterales pueden ser beneficiosos en la programación, es conveniente no recurrir a ellos de modo general. Consideramos a continuación los efectos laterales en funciones y en procedimientos.
  • 6. EFECTOS LATERALES EN FUNCIONES • Efectos laterales en funciones: Una función toma los valores de los argumentos y devuelve un único valor. Sin embargo, al igual que en los procedimientos, una función puede hacer cosas similares a ellos. • Una función puede tener parámetros variables, además de parámetros valor (no devuelven nada) en una lista de parámetros formales. Una función puede cambiar el contenido de una variable global y ejecutar instrucciones de E/S. Estas operaciones se conocen como parámetros laterales y se deben evitar.
  • 7. EFECTOS LATERALES EN PROCEDIMIENTOS • Efectos laterales en procedimientos: La comunicación del procedimiento con el programa se debe realizar atreves de parámetros. Si un procedimiento modifica una variable global (distinta de un parámetro actual) esto es un efecto lateral, por ello excepto en contadas ocasiones, no debe aparecer en la declaración del procedimiento. Si se necesita una variable temporal en un procedimiento es mejor utilizar una variable local, que habría que declarar en el procedimiento.