m. c. bertha lópez azamar - unpa suneoblopez/programacionestructurada/...la lógica de la...
TRANSCRIPT
![Page 1: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/1.jpg)
5. Modulos
(funciones y procedimientos)
Tema:
Profesor:
M. C. Bertha López AzamarTuxtepec, Oaxaca. Octubre/2005
Universidad del Papaloapan
Materia:
![Page 2: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/2.jpg)
Objetivos:
Conocer la estructura general de un
programa y los conceptos de
procedimientos y funciones.
Comprender el ámbito de las variables al
estructurar módulos.
Manejar la declaración y manipulación de
valores de variables locales y variables
globales.
![Page 3: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/3.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
3
Un programa generalmente tiene dos
bloque principales:
Bloque de declaraciones:
Se especifican todos los elementos a
utilizar :
▪ Variables
▪ Constantes
▪ Arreglos
▪ Registros
▪ otros
Bloque de instrucciones:
El conjunto de operaciones a realizar para la
obtener resultados deseados.
![Page 4: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/4.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
4
Esquema general de un programa en
Lenguaje C:
• Directivas del preprocesador
• Declaraciones
• constantes
• variables globales
• declaraciones de funciones (Prototipos de funciones)
• Bloque de funciones
• función principal main()
• funciones del usuario
Cada función se sitúa entre las { y } y contiene:
- cabecera
- declaración de variables locales
- cuerpo de la función (bloque de instrucciones)
![Page 5: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/5.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
5
Esquema general de un programa en lenguaje Pascal:
• Cabecera:
(sentencia PROGRAM para escribir el nombre del
programa) (es opcional)
• Declaraciones:
- de constantes
- de tipos
- de variables
- de procedimientos y funciones
• Cuerpo del programa:
(situado entre las palabras BEGIN y END)
![Page 6: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/6.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
6
Esquema general de un programa en lenguaje Visual Basic:
•Un proyecto general que puede contener tres tipos de
modulos
• De formulario (objetos Forms)
• Estándar
• De clase
•Cada formulario puede contener:
•Interfaz - componentes y propiedades
•Código
• General – declaraciones globales:
- de constantes
- de tipos
- de variables globales al modulo
• Procedimientos (variables locales)
procedimientos de eventos
procedimientos del usuario
funciones del usuario
![Page 7: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/7.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
7
Subprogramas o módulos
La lógica de la programación modular se basa en que
resulta más fácil escribir un buen programa si se divide
en trozos pequeños (O’Brien & Nameroff, 1993).
![Page 8: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/8.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
8
Ventajas de los Subprogramas o módulos
![Page 9: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/9.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
9
![Page 10: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/10.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
10
Función1
Función2
Programa
principal
Procedimiento1
Procedimiento2
![Page 11: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/11.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
11
Concepto de procedimiento
![Page 12: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/12.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
12
Ejemplo de un programa en pascal que ocupa un
procedimiento :
Program DemoProc;var:
X, Y : integer;
Procedure Resta; {nombre del procedimiento}
beginX := X – 1; {bloque del procedimiento}
Y := Y – 1;end;
BeginX := 5;Y := 10;Resta; {llamada al procedimiento}
end;
![Page 13: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/13.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
13
Ejemplo de un procedimiento de evento en Visual Basic:
interfaz
Private Sub Command1_Click()Const Pi = 3.14159Dim Radius, AreaIf Text1.Text = " " Then
MsgBox "Falta que introduzcas el radio"Else
Radius = CInt(Text1.Text)Area = Pi * Radius * RadiusLabel2.Caption = "Area = " & Str(Area)
End IfEnd Sub
![Page 14: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/14.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
14
Ejemplo de una función en Visual Basic:
Private Sub Option1_Click()Call Estado(Option1.Name) //llamada a función
Label1.Caption = UCase(Text1.Text)End Sub
Private Sub Estado(X As String) //definición de función
Select Case XCase Option1
Label2.Caption = "convertir a mayusculas"Case Option2
Label2.Caption = "convertir a minusculas"End Select
End sub
Private Sub Option2_Click()Call Estado(Option1.Name) //llamada a función
Label1.Caption = LCase(Text1.Text)End Sub
![Page 15: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/15.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
15
Concepto de función
![Page 16: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/16.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
16
Función1Programa
principal
datos datos
datosdatos
![Page 17: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/17.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
17
Ejemplo de lugares desde donde se pueden hacer
las llamadas a una función que devuelve valor:
‘desde una función de impresión
Print 10 * Adec(a)
‘asignando el valor devuelto a una variable
X = Adec(a)
‘desde una sentencia de control
If Adec(a) = 10 Then Debug.Print "Fuera del intervalo"
‘como argumento de otra función
X = OtraFunción(10 * Adec(a))
![Page 18: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/18.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
18
Ejemplo de una función en Pascal:
Program DemoProc;var:
Z: real;
FUNCTION Area (R: Real) : Real;CONST
Pi = 3,141592;BEGIN
Area := Pi * R * REND;
Begin{llamada a la función}
Z := Area(25); End;
Dentro del cuerpo de la
función debe tener una
asignación en alguna
parte del cuerpo cuyo
identificador de la
izquierda es el nombre de
la función, y el valor de la
derecha del signo igual, es
el valor de una variable o
el resultado de una
expresión del tipo
adecuado y es el resultado
que devuelve una función.
![Page 19: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/19.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
19
Ejemplo de una función en Lenguaje C:
#define Pi 3.141592float A;float Area(float R); //prototipo
void main(){
A = Area(25); //llamada a función
}
float Area(float R) //definición de función
{float a;a = Pi * R * R;return(a);
}
![Page 20: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/20.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
20
Ejemplo de una función en Visual Basic:
Private Sub cmdCalcular_Click()x= Adec(a) //llamada a función
End Sub
‘definición de función
Private Function Adec(X As String)
…….
End Function
![Page 21: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/21.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
21
Ámbito o alcance de las variables
![Page 22: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/22.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
22
![Page 23: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/23.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
23
![Page 24: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/24.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
24
Dentro de un modulo, si una
variable local tiene el mismo
nombre, todas las referencias
a ese nombre son sobre la
variable local y no tienen
efecto sobre la variable global.
![Page 25: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/25.jpg)
Modulos (funciones y procedimientos)
M. C. Bertha López Azamar Programación Estructurada
Datos y tipos de datos
Variable y constantes
Operadores aritméticos y lógicos
Expresiones
Concepto de asignación
Esquema general de un programa
Concepto de función
Variables globales y locales
Paso de parámetros
Concepto de procedimiento
Introducción
25
Visual Basic le permite especificar el alcance de
una variable cuando la declara.
Alcance de las variables en Visual Basic
Ámbito Declaración Visible en
Local Dim, Static, o ReDim
(dentro de un procedimiento,
subprocedimiento o función)
El procedimiento en el que
está declarada.
Módulo Dim o Private
(sección de declaraciones del
módulo de formulario o de
código [.frm, .bas])
Todos los procedimientos
del módulo de formulario o
de código
Global Public
(sección de declaraciones del
un módulo de código [.bas])
En toda la aplicación.
No puede declarar variables
públicas dentro de un
procedimiento.
![Page 26: M. C. Bertha López Azamar - UNPA SUNEOblopez/ProgramacionEstructurada/...La lógica de la programación modular se basa en que resulta más fácil escribir un buen programa si se](https://reader033.vdocuments.pub/reader033/viewer/2022050523/5fa6b5f4d07bb337e1665b07/html5/thumbnails/26.jpg)
Referencias:
1. Antonakos, James L. & Kenneth C. Mansfield Jr.;
Programación Estructurada en C; Prentice Hall; 1997.
2. Cevallos, Francisco Javier; Enciclopedia del Lenguaje C; Ed.
Alfaomega; 1997.
3. Deitel, H. M. & Deitel, P. J.; Como programar en Java; Pearson
Educacion; 1998.
4. Gottfried, Byron; Programación en C; Mc Graw Hill; Segunda
edición; 1997.
5. Joyanes Aguilar, Luis; Turbo Pascal 6.0; Mc Graw Hill; 1993.
6. Lipschutz, Seymour; Estructura de datos; Mc Graw Hill; 1992.
7. O’Brien, Stephen K & Nameroff, Steve; Turbo Pascal 7; Mc
Graw Hill; 1993.
8. Schildt, Herbert; Manual de referencia C; Mc Graw Hill;
Cuarta edición; 2001.
9. http://lenguajes-de-programacion.com/programacion.shtml