guia didactica de la unidad v. lapso 2014_1

38
GUIA DIDACTICA UNIDAD V Implementación de modelos orientados a objetos utilizando estructuras secuenciales y selectivas Autora:Profa. Erys Piñero [email protected] Barquisimeto, Junio 2014 UNIVERSIDAD CENTROCCIDENTAL LISANDRO ALVARADO SISTEMA DE EDUCACION A DISTANCIA DECANATO DE CIENCIAS Y TECNOLOGIA

Upload: benedictum504

Post on 15-Jan-2016

8 views

Category:

Documents


0 download

DESCRIPTION

informativo

TRANSCRIPT

Page 1: Guia Didactica de La Unidad v. Lapso 2014_1

GUIA DIDACTICA

UNIDAD V

Implementación de modelos orientados a objetos utilizando

estructuras secuenciales y selectivas

Autora:Profa. Erys Piñero [email protected]

Barquisimeto, Junio 2014

UUNNIIVVEERRSSIIDDAADD CCEENNTTRROOCCCCIIDDEENNTTAALL

LLIISSAANNDDRROO AALLVVAARRAADDOO

SSIISSTTEEMMAA DDEE EEDDUUCCAACCIIOONN AA DDIISSTTAANNCCIIAA

DDEECCAANNAATTOO DDEE CCIIEENNCCIIAASS YY TTEECCNNOOLLOOGGIIAA

Page 2: Guia Didactica de La Unidad v. Lapso 2014_1

2

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

GUIA DIDACTICA

UNIDAD V

Implementación de modelos orientados a objetos con estructuras secuenciales y selectivas.

UUNNIIVVEERRSSIIDDAADD CCEENNTTRROOCCCCIIDDEENNTTAALL

LLIISSAANNDDRROO AALLVVAARRAADDOO

SSIISSTTEEMMAA DDEE EEDDUUCCAACCIIOONN AA DDIISSTTAANNCCIIAA

DDEECCAANNAATTOO DDEE CCIIEENNCCIIAASS YY TTEECCNNOOLLOOGGIIAA

Datos de Identificación

Elaborado por: Profesora. Erys Piñero

Correo-electrónico: [email protected]

Fecha Elaboración: Julio 2011.

Fecha de Última Actualización: Junio 2014.

Page 3: Guia Didactica de La Unidad v. Lapso 2014_1

3

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Tabla de Contenidos

Página

Introducción…………………………………………………………………...... 04

Objetivo General de Aprendizaje…………………………………………...… 05

Objetivos Específicos de Aprendizaje………………………………………… 05

Contenidos………………………………………………………………………. 06

Fuentes de Información………………………………………………………… 06

Evaluación de los Aprendizajes……………………………………………….. 07

SEGUNDA PARTE UNIDAD V

Desarrollo del Aprendizaje…………………………… 08

Conocimientos previos……………………………………………..… 08

Reglas sintácticas y semánticas de la herramienta de programación…. 09

Ejercicios simples utilizando la herramienta de programación propuesta……………………………………………………………

17

Estructuras Secuenciales y Selectivas……………………………………. 21

a. Sintaxis de las estructuras Secuenciales…………………………… 21

b. Sintaxis de las estructuras Selectivas Simples…………………….. 23

c. Sintaxis de estructuras Selectivas Anidadas. 25

Resolución de problemas con una y dos clases de objetos, utilizando estructuras secuenciales y selectivas……………………………………….

29

Prueba y/o simulación de los modelos elaborados………………………. 34

Ejercicios propuestos………………………………………………………... 34

Referencias…………………………………………………………………... 37

Page 4: Guia Didactica de La Unidad v. Lapso 2014_1

4

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Introducción

En esta unidad se propone un pseudolenguaje sencillo para la construcción de

algoritmos. Además se estudian las estructuras básicas de los algoritmos. Se debe

hacer notar que las estructuras básicas de los algoritmos son conceptos propios

de la programación estructurada y son utilizadas por la programación orientada a

objetos para la codificación de los métodos que forman parte de las clases.

Las estructuras básicas pueden ser:

Secuenciales: cuando una instrucción del programa sigue a otra.

Selección o decisión: acciones en las que la ejecución de alguna

dependerá de que se cumplan una o varias condiciones.

Repetición o Iteración: cuando un proceso se repite hasta que

cierta condición sea establecida para finalizar ese proceso. Será

objeto de estudio en la próxima unidad.

En esta unidad se definen las estructuras secuenciales y selectivas, se presentan

ejemplos y se resuelven ejercicios paso a paso, aplicando la metodología

estudiada, para que usted se sienta llevado de la mano, siempre acompañado y al

final con gran facilidad pueda resolver problemas usando programación orientado

a objeto con las estructuras estudiadas. Finalmente se presenta una serie de

ejercicios propuestos para que verifique sus conocimientos.

El estudio de esta unidad curricular sirve de base para los temas que siguen a

continuación. Es cuando el estudiante comienza a adquirir la lógica de

programación. Se hace énfasis en desarrollar la habilidad y destreza en el

Page 5: Guia Didactica de La Unidad v. Lapso 2014_1

5

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

estudiante para la resolución de problemas bajo el enfoque orientado a objetos,

constituyendo esto el aspecto básico en el desarrollo de ésta asignatura.

Objetivo General de Aprendizaje.

Construir Modelos empleando el Análisis, el Diseño y la Implementación

Orientados a Objetos, haciendo uso de las estructuras Secuenciales y Selectivas.

Objetivos Específicos de Aprendizaje.

Estimado estudiante a continuación se le presentan los objetivos específicos

que debe alcanzar para terminar el estudio de este tema. Léalos

detenidamente y al finalizar el estudio asegúrese que los ha cubierto

plenamente.

1. Conocer las reglas sintácticas y semánticas de la herramienta de

implementación de programas bajo el enfoque Orientado a Objeto.

2. Desarrollar Modelos Orientados a Objeto, aplicando la metodología

propuesta, que requieran la utilización de estructuras Secuenciales

3. Desarrollar Modelos Orientados a Objetos, aplicando la metodología

propuesta, que requieran la utilización de estructuras Selectivas simples y

anidadas.

4. Comprobar el funcionamiento de los Modelos Elaborados

Page 6: Guia Didactica de La Unidad v. Lapso 2014_1

6

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Contenidos

Reglas sintácticas y semánticas de la herramienta de programación.

Ejercicios simples utilizando la herramienta de programación

propuesta.

Estructuras Secuenciales y Selectivas

Sintaxis de las estructuras Secuenciales

Sintaxis de las estructuras Selectivas simples

Sintaxis de las estructuras Selectivas Anidadas.

Resolución de problemas, con una y dos clases de objetos, utilizando

estructuras Secuenciales y Selectivas.

Prueba y/o simulación de los modelos elaborados

Fuentes de Información

En este tema no se usará un texto guía único. Sin embargo, le recomiendo hacer

la revisión bibliográfica del siguiente material:

FUNDAMENTOS DE PROGRAMACION (Joyanes, 2003) Págs. 86,87, 103,

104,131-132, 136,137,

Sitios Web recomendados:

Definición de estructuras secuenciales

http://www.desarrolloweb.com/articulos/2199.php

Definición de estructuras selectivas http://www.desarrolloweb.com/articulos/2225.php

Page 7: Guia Didactica de La Unidad v. Lapso 2014_1

7

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Evaluación de los Aprendizajes

Para evaluar la habilidad y destreza adquirida para resolver problemas o

situaciones planteadas bajo el Paradigma Orientado a Objeto aplicando la

metodología para la construcción de algoritmos y haciendo uso de estructuras

secuenciales y selectivas tendrá la oportunidad de realizar diversos tipos de

actividades tanto formativas como sumativas:

Talleres (presencial/línea) con carácter sumativo, es decir, con puntaje

acumulativo.

La segunda prueba larga evalúa en forma sumativa esta unidad.

Debe tener en cuenta que mientras mas participe en las evaluaciones de carácter

formativo estará adquiriendo habilidades y destrezas para el logro de los objetivos,

pues le reportan avances logrados.

Page 8: Guia Didactica de La Unidad v. Lapso 2014_1

8

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

SEGUNDA PARTE

Desarrollo del Aprendizaje –

Conocimientos previos Con miras a que termine el tema con éxitos, es necesario que repase los temas

que se enumeran a continuación. Se le recomienda hacer una revisión profunda,

ya que de esto depende la comprensión de esta unidad.

Cálculos de promedios

Cálculos de porcentajes

Evaluación de una expresión aritmética

Tipos de datos

Metodología para la resolución de problemas orientados a objetos,

Unidad IV, donde se resuelven paso a paso una serie de ejercicios,

que son modelos, para resolver otros de mayor complejidad.

Page 9: Guia Didactica de La Unidad v. Lapso 2014_1

9

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Reglas sintácticas y semánticas de la herramienta de programación Para representar un algoritmo se usan métodos que permita independizar el

algoritmo de un determinado lenguaje de programación. Entre los métodos mas

utilizados se encuentran: Diagramas de flujo (se representa por medio de gráficos)

y lenguaje de descripción de algoritmos: pseudolenguaje o pseudocódigo. En este

curso solo se trabajará con el segundo método.

El pseudolenguaje, según Luis Joyanes (2003) es un lenguaje que describe un

algoritmo. Un pseudocódigo no puede ser ejecutado por una computadora, pero

es un paso previo, que facilita el trabajo de traducción a un lenguaje de

programación. Entonces ¿Porque usarlo? La respuesta es sencilla, con el uso de

un pseudocódigo, el programador se concentra en la lógica de programación y el

uso de las estructuras elementales y no en las reglas o sintaxis de un lenguaje

específico de programación. Es definir los procesos de formulación de una

solución a una situación planteada, apoyándose en conceptos y estructuras

propias de la programación.

Aunque no existen reglas para escritura del pseudocódigo, se ha escogido una

notación estándar que se utilizará en este curso.

Las palabras reservadas se denotan como palabras en minúsculas. Ejemplos:

inicio, clase, fin, leer, real, escribir, entero, retornar

Los identificadores se utilizan como nombres de variables, constantes,

estructuras de datos, clases o nombre de funciones y métodos. Deben comenzar

con una letra del alfabeto en mayúscula. Los siguientes caracteres son una

secuencia de letras en minúscula, dígitos (cadena de caracteres alfanuméricos) y

Page 10: Guia Didactica de La Unidad v. Lapso 2014_1

10

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

el símbolo de subrayado (_) y no puede contener ningún carácter especial.

Ejemplos de identificadores: Nombre, Edad, Calcular_Nota o CalcularNota

NO SON IDENTIFICADORES

%Porcentaje No comienza con una letra y posee el carácter %

mayor No comienza con una letra en mayúscula

Numero 1 Contiene un carácter blanco

Porcentaje# Posee el carácter #

clase Es palabra reservada

Actividades de control Complete la tabla indicando cuales son identificadores y cuales no. En

caso de no ser identificador indique ¿por que?

Nombre del identificador ¿Es identificador?

Nota 1 No, posee carácter blanco

Edad Si

Promedio()

Casa

Dirección?

Tlf

NroEmpleado

#Niños

Señor

inicio

Los comentarios son textos adicionales que se añade al programa para explicar

su funcionalidad. Se definen como una secuencia de texto precedida por “// “.

Page 11: Guia Didactica de La Unidad v. Lapso 2014_1

11

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Los tipos de datos según su naturaleza se especifican en la notación con las

palabras minúsculas correspondientes a sus nombres: entero, real, lógico,

alfanumérico.

Tipo de dato entero: las operaciones permitidas son: Aritméticas: +, -, *, /, %

(resto de la división) y de comparación: =, >, <, ≤, ≥, <>

Tipo de dato real: las operaciones permitidas son: Aritméticas: +, -, *, / y de

comparación: =, >, <, ≤, ≥, <>

Tipo de dato lógico: las operaciones permitidas son: de comparación: =, <> y

Lógicas: no, o, y

Tipo de dato alfanumérico: las operaciones permitidas son de comparación: =, >,

<, ≤, ≥, <>

Le recomiendo que realice la siguiente lectura:

LECTURA RECOMENDADA.

FUNDAMENTOS DE PROGRAMACION. Algoritmos, estructuras

de datos y objetos (Luis Joyanes Aguilar, 2003). Pág. 103 y 104.

“La operación de asignación”

Una vez realizada las lecturas indicadas realice las actividades que se muestra a

continuación:

Actividades de control

¿Para que se utilizan la operación de asignación?

¿Cómo se representa la operación de asignación?

¿Cual es el formato general de una operación de asignación?

Page 12: Guia Didactica de La Unidad v. Lapso 2014_1

12

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Instrucciones de Entrada: “Esta instrucción lee datos de un dispositivo de

entrada” (por ejemplo el teclado) Luis Joyanes (2003), pág 87. Este dato va a ser

almacenado en la variable que aparece a continuación de la instrucción: leer

identificador

Ejemplo leer Edad

Instrucciones de Salida: “Estas instrucciones se escriben en un dispositivo de

salida”, Luis Joyanes (2003), pág 87. La forma es: escribir valor

Constantes: son valores que no varían durante la ejecución de un programa. Se

declaran usando la palabra reservada constante y se le asigna un valor en el

momento de la declaración.

Se definen mediante el siguiente formato:

constante Tipo Identificador valor

Ejemplos: constante real Pi 3.141592

constante entero DiasSemana 7 Variables: Son valores que varían durante la ejecución de un programa.

Se definen mediante el siguiente formato:

Tipo Identificador //Una variable

Tipo Identificador1,...,Identificadorn //Varias variables

Tipo IdentificadorValor //Asignar un valor inicial

Tipo Identificador Identificador

Ejemplos: entero Hijos

Page 13: Guia Didactica de La Unidad v. Lapso 2014_1

13

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

real Sueldo, Promedio

alfanumérico Respuesta ”S”

entero Numero1 345, Numero2 23

Actividades de control

Explique que sucede en esta declaración:

entero Edad1 Edad2

Los parámetros: se definen como:

Tipo Tipo _ parámetro Identificador

Donde:

Tipo: Indica el tipo de dato según su naturaleza

Tipo _ parámetro: Por referencia (↑) o por valor (↓)

Ejemplo: entero ↓ Edad Un programa en pseudolenguaje es una colección de funciones. Todas las

funciones contiene una o más instrucciones encerradas entre las palabras

reservadas inicio y fin Existen dos tipos de funciones:

Las funciones que no retornan un valor

Las funciones que retornan un valor.

Page 14: Guia Didactica de La Unidad v. Lapso 2014_1

14

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Si la función no retorna un valor tiene la siguiente estructura:

Identificador_de_la_función (Parámetros)

inicio

//Cuerpo de la función

fin

Si la función retorna un valor:

Tipo Identificador_de_la_funcion()

inicio

//Cuerpo de la función

retornar Identificador

fin

Dentro de una función también se pueden declarar variables y estructuras de

datos. Todas estas declaraciones son locales a la función y por lo tanto pierden

validez y alcance fuera del contexto de la función.

Actividades de control

De ejemplo de una función que no retorna un valor

Las funciones pueden ser invocadas en cualquier parte de un algoritmo. La forma

de hacerlo es:

Identificador_de_la_función(lista de parámetros)

Page 15: Guia Didactica de La Unidad v. Lapso 2014_1

15

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Un método a nivel de programación es una función que pertenece a

una clase. Todo método es una función, pero no todas las funciones

son métodos.

La estructura de un programa orientado a objetos consta de:

Definición de la estructura de la clase

Desarrollo de los métodos de la clase

Desarrollo de las funciones propias del programa de aplicación (Opcional)

Cuerpo principal del programa de aplicación

1.- Definición de la estructura de la clase

Se definen los atributos de la clase y sus métodos

clase Identificador

inicio

privado:

tipo Atributo1

tipo Atributo2

público:

Metodo1(Tipo Tipo _ parámetro Identificador)

tipo_retorno etodo ()

fin // fin de la clase

Donde Atributo1, Atributo2 pueden ser constantes o variables simple, clases o

datos de tipo estructurado y Metodo1 y Metodo2 son funciones

Page 16: Guia Didactica de La Unidad v. Lapso 2014_1

16

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Desarrollo de los métodos de las clases

Identificador metodo (parámetros)

inicio

// Cuerpo del método

fin

Tipo Identificador metodo ()

inicio

//Cuerpo del método

retornar Identificador

fin

Desarrollo de las funciones propias del programa de aplicación

(Opcional Tipo Identificador_de_la_funcion (parámetros)

inicio

//Cuerpo de la función

fin

Cuerpo principal del programa de aplicación // Cuerpo principal

principal( )

inicio

ClaseIdentificador ObjIdentificador // Creación del objeto

// Definición de variables

// Cuerpo de la función principal

fin

Page 17: Guia Didactica de La Unidad v. Lapso 2014_1

17

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Ejercicios simples utilizando la herramienta de programación propuesta

Ejercicio 1 Calcular el promedio de tres notas (Nota1, Nota2 y Nota3) de tipo real.

Solución:

Para resolver el problema se siguen los pasos de la metodología estudiada:

Identificar las clases y objetos: para ello se debe subrayar los sustantivos

y verbos o frases con verbos para crear la lista, en este ejemplo sería:

Calcular el promedio de tres notas (Nota1, Nota2 y Nota3).

Asignación de atributos y métodos: Una vez realizado el subrayado, en

el paso anterior, se crea la lista de sustantivos y verbos o frases con verbos

y se asignan responsabilidades: clase, atributos o métodos.

¿Ahora, cual es la clase? Recuerde que una clase tiene atributos y

métodos, por tanto, Notas es la clase y Nota1, Nota2 y Nota3 son los

atributos.

Luego se construye el siguiente listado:

Lista Clasificación Nota1------------------------------------------ Atributo/Notas Nota2------------------------------------------ Atributo/Notas Nota3------------------------------------------ Atributos/Notas Notas------------------------------------------ Clase CalcularPromedio ------------------------ Método/Notas

Page 18: Guia Didactica de La Unidad v. Lapso 2014_1

18

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Se define las operaciones que se deben ejecutar, en este ejemplo se

tendría:

Promedio ← (Nota1 + Nota2 + Nota3)/3

Diseño de la estructura de la clase: Notas.

Recuerde que la forma de representar gráficamente una clase es un

rectángulo, dividido en tres bandas. La primera banda contiene el

nombre de la clase, la banda central los atributos y la banda inferior

contiene los métodos.

Notas

real Nota1 real Nota2 real Nota3

Asignar_Nota1(real ↓ Valor ) Asignar_Nota2(real ↓ Valor ) Asignar_Nota3 (real ↓ Valor3) real Sacar_Nota1() real Sacar_Nota2() real Sacar_Nota3()

real CalcularPromedio()

La banda central contiene Atributos:

Nota1, Nota2 y

Nota3

La banda

inferior

contiene los

Métodos

La banda superior contiene

Nombre de la clase

Para sumar

tres notas se usa

el símbolo +

Para dar valor a una

variable se usa el

símbolo ← Los paréntesis se

usan para que sume

primero las tres

notas y luego divida

el resultado entre 3

Page 19: Guia Didactica de La Unidad v. Lapso 2014_1

19

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

A continuación se explica como se define la estructura en pseudolenguaje.

// Definición de la estructura de la clase

clase Notas

inicio

privado: real Nota1,Nota2, Nota3

público:

//Métodos para asignar o meter datos Asignar_Nota1 (real ↓ Valor1)

Asignar_Nota2 (real ↓ Valor2)

Asignar_Nota3 (real ↓ Valor3)

//Métodos para sacar datos

real Sacar_Nota1 ()

real Sacar_Nota2 () real Sacar_Nota3 ()

// Métodos propios de la clase

real CalcularPromedio ()

fin // Notas

En este momento queda definida la clase Notas

Si no ha quedado clara la definición de la estructura de la clase, reléala, para

poder continuar.

Actividades de control

¿Para que se define la clase Notas?

Se declaran

los atributos

La palabra

reservada

clase, define

la clase:

Notas

Se declaran

los métodos

Observe que la definición de la

estructura de la clase es una copia

textual del diseño de la clase

Page 20: Guia Didactica de La Unidad v. Lapso 2014_1

20

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

//Métodos propios de la clase

Notas Asignar_Nota1 (real ↓ Valor1)

inicio Nota1 ← Valor1

fin Notas Asignar_Nota2 (real ↓ Valor2)

inicio Nota2 ← Valor2

fin Notas Asignar_Nota3 (real ↓ Valor3)

inicio Nota3 ← Valor3

fin real Notas Sacar_Nota1 ( )

inicio

retornar Nota1

fin

real Notas Sacar_Nota2 ( )

inicio

retornar Nota2 fin

real Notas Sacar_Nota3 ( )

inicio

retornar Nota3 fin Otra forma, sin utilizar variables

entero Notas CalcularPromedio() adicionales

inicio inicio

real Promedio retornar (Nota1+Nota2+Nota3)/3 Promedio ← (Nota1 + Nota2 + Nota3)/3 fin

retornar Suma

fin

Se desarrollan los

métodos de la

clase

Page 21: Guia Didactica de La Unidad v. Lapso 2014_1

21

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

// Programa de aplicación principal( )

inicio

Notas ObjNotas //Creación del objeto

InterfazEntrada(ObjNotas) InterfazSalida(ObjNotas)

fin

InterfazEntrada(Notas ↑ ObjNotas)

inicio real Valor1, Valor2, Valor2 //Definición de variables

escribir “Escriba la nota 1”

leer Valor1 // Lectura de la Nota1

objNotas. Asignar_Nota1(Valor1)

escribir “Escriba el nota 2”

leer Valor2 //Lectura de la Nota2

objNotas. Asignar_Nota2(Valor2)

escribir “Escriba el nota 3”

leer Valor3 // Lectura de la Nota3

objNotas. Asignar_Nota3(Valor3)

fin InterfazSalida(Notas ↓ ObjNotas)

inicio

escribir” La primera nota es “ , ObjNotas.Sacar_Nota1( )

escribir” La primera nota es “ , ObjNotas.Sacar_Nota2( ) escribir” La primera nota es “ , ObjNotas.Sacar_Nota3( )

escribir “El promedio de las tres notas es “, ObjNotas.CalcularPromedio()

fin

Actividades de control

¿Qué función tiene la última instrucción del principal, en el

ejercicio anterior. (escribir “El promedio de las tres notas es: “,

ObjNotas.CalcularPromedio())?

Notas es la clase

ObjNotas es el

Objeto

Page 22: Guia Didactica de La Unidad v. Lapso 2014_1

22

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Estructuras Secuenciales. Hasta ahora se ha estudiado en la Unidad II: Algoritmos y Programación, Unidad

III: Paradigma orientado a objeto para la resolución de problemas y Unidad IV:

Metodología para la resolución de problemas bajo el enfoque orientado a objetos.

En esta unidad se aplican todos estos conocimientos.

Según Joyanes Luis (2003). Pág. 132, el término flujo de control se refiere al orden

en que se ejecutan las instrucciones de un programa, a menos que se indique

expresamente, el flujo normal de control de todos los programas es secuencial, es

decir, las sentencias se ejecutan en secuencia, una después de otra, en el orden

en que se sitúan dentro del programa.

Según Flores Juan (2003). Pág. 76 “Los algoritmos y su codificación en

pseudolenguaje necesitan estructuras secuenciales para poder recibir datos,

realizar los cálculos necesarios y mostrar la información resultante”.

Entre las estructuras secuenciales se tienen:

Estructura para la salida de información: Este tipo de estructuras permite

mostrar información a través de un dispositivo de salida de una computadora.

La instrucción escribir, que es la palabra que se utiliza en el pseudolenguaje

usado para la representación de la salida.

Observe en el ejemplo anterior como se usa la instrucción escribir.

Estructura para la entrada de datos: se refiere a la forma o mecanismo que

se emplean para que podamos ingresar los datos que necesita un algoritmo

para que pueda procesarlos y obtener la información necesaria. Este tipo de

Page 23: Guia Didactica de La Unidad v. Lapso 2014_1

23

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

estructuras nos permiten ingresar datos a través de un dispositivo de entrada

de una computadora. La instrucción leer es la palabra que se utiliza en el

pseudolenguaje usado para la entrada de los datos.

Estructura para operaciones aritméticas y de cálculos: Se refiere a la forma o

mecanismo que se emplean para poder procesar los datos ingresados y

obtener la información necesaria.

Actividades de control

1. Defina con sus palabras que son estructuras secuenciales.

2. ¿Para que los algoritmos y su codificación en pseudolenguaje

necesitan estructuras secuenciales?

3. Muestre cual es la representación grafica de este tipo de

estructuras

Ahora verifique que domina el concepto de estructuras secuenciales, por tanto, si

aún tiene dudas, regrese, por favor, y estúdielos a profundidad, es para su

beneficio. Le aseguro que vale la pena regresar para que esta unidad sea muy

sencilla de terminar.

Page 24: Guia Didactica de La Unidad v. Lapso 2014_1

24

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Estructuras Selectivas

Hasta el momento se han analizado problemas donde las instrucciones se realizan

en forma secuencial, pero en determinados casos se necesita evaluar una

condición y en función del resultado se realiza una u otra acción. Estas son las

llamadas estructuras selectivas de decisión o alternativas.

Ahora, por favor, realice la siguiente lectura:

LECTURA RECOMENDADA.

FUNDAMENTOS DE PROGRAMACION (Luis Joyanes, 2003)

Pág. 135

Una vez realizada la lectura recomendada anteriormente realice la siguiente

actividad.

Actividades de control

1. Indique los tipos de estructuras selectivas o alternativas.

2. Explique las estructuras selectivas simples

3. Muestre cual es la representación grafica de este tipo de

estructuras

Page 25: Guia Didactica de La Unidad v. Lapso 2014_1

25

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

El formato general de la instrucción es decidir si una determinada sentencia debe

ejecutarse o no (alternativa simple) es el siguiente:

si (condición) instrucción La instrucción si puede escribirse también más general para controlar la ejecución

de un grupo de sentencias, de la siguiente forma:

si (condición) inicio instrucción1 instruccion2 : instrucción fin . Ejemplo usando una sola instrucción

si (Num > 0) // Comprobar si el numero es positivo

escribir “ el numero es positivo”

Ejemplo usando varias instrucciones

si (Num > 0) // Comprobar si el número es positivo

inicio

escribir “el numero “, Num

escribir “ es positivo” fin

si va en minúscula por

ser palabra

reservada La condición va

entre

par La condición va

entre

paréntesis

éntesis

inicio, es palabra

reservada

fin, es palabra

reservada

Page 26: Guia Didactica de La Unidad v. Lapso 2014_1

26

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Observe que solo se necesita saber si el número es positivo. En otro

caso no hacer nada.

Si se van a escribir más de dos instrucciones se encierran entre las

palabras reservadas inicio y fin.

Ahora, por favor, realice la siguiente lectura:

LECTURA RECOMENDADA.

FUNDAMENTOS DE PROGRAMACION (Luis Joyanes, 2003)

Pág. 136-137

Una vez realizada la lectura recomendada anteriormente realice la siguiente

actividad.

Actividades de control

1. Explique las estructuras selectivas dobles

2. Muestre cual es la representación grafica de este tipo de

estructuras

El formato general de la instrucción para decidir si una determinada sentencia

debe ejecutarse o no es el siguiente:

si (condición)

instrucción1

sino instruccion2

Page 27: Guia Didactica de La Unidad v. Lapso 2014_1

27

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

y para un grupo de instrucciones

si (condición)

inicio

instrucción11

instruccion12

:

Instruccion1n

fin

sino

inicio

instruccion21

instruccion22

:

Instruccion2n

fin

Ejemplo

si (num1>num2) //calcular el mayor valor entre dos números diferentes mayor ← num1

sino mayor ← num2

Observe que en este ejemplo interesa realizar una acción si el resultado de la

condición es verdadera y otra si es falsa.

Otro ejemplo si (AñosServicio>15)

inicio Exceso ← AñosServicio – 15

Bono ←Exceso *500

fin

sino Bono ← 0

Observe que si la condición si (AñosServicio>15) es verdadera

entonces se ejecutan 2 instrucciones, por tanto deben encerrarse entre

las palabras reservadas inicio y fin. Pero si la condición es falsa, solo se

hace una instrucción (Bono ← 0).

Page 28: Guia Didactica de La Unidad v. Lapso 2014_1

28

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Ahora, por favor, realice la siguiente lectura:

LECTURA RECOMENDADA.

FUNDAMENTOS DE PROGRAMACION (Luis Joyanes, 2003)

Pág. 142 y 144

Una vez realizada la lectura recomendada anteriormente realice la siguiente

actividad.

Actividades de control

1. Explique las estructuras selectivas múltiples

2. Muestre cual es la representación grafica de este tipo de

estructuras

El formato general de la instrucción son tomas de decisión especializada que

permiten comparar una variable contra distintos posibles resultados, ejecutando

para cada caso una serie de instrucciones específicas

si (condición1)

inicio

si (condicion2)

instruccion1

sino

instruccion2

fin

sino

inicio

si (condicion3)

instruccion3

sino

instruccion4

fin

Page 29: Guia Didactica de La Unidad v. Lapso 2014_1

29

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Donde instruccion1, instruccion2, instruccion3 o instruccion4 pueden ser a su vez

estructuras condicionales.

Ejemplo

si ((Hora>=0) y (Hora<12))

escribir “Buenos días”

sino si ((Hora>=12) y (Hora<18))

escribir “Buenas tardes”

sino

si ((Hora>=18) y (Hora<24))

escribir “Buenas tardes” sino escribir “Hora no valida”

Otro ejemplo:

si (edad > 18)

si (estatura>1.80) escribir” Es mayor que 18 y estatura>1.80”

sino

escribir “Es mayor que 18 y estatura<=1.80”

sino // la edad es <=18

si (sexo=”f”) escribir”Tiene edad <= que 18 y sexo femenino”

sino escribir “Tiene edad <= que 18 y sexo masculino”

Ahora, por favor, realice la siguiente lectura:

LECTURA RECOMENDADA.

Ahora puede leer estructuras selectivas en la siguiente dirección:

http://www.desarrolloweb.com/articulos/2225.php

Para terminar y a modo de repaso, realice la siguiente actividad de control

Page 30: Guia Didactica de La Unidad v. Lapso 2014_1

30

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Actividades de control

1) 1.Defina que son estructuras selectivas

2) 2.Indique cuando usar estructuras selectivas

3) 3.Explique como se clasifican las estructuras selectivas y de

ejemplos de cada una de ellas.

Una vez estudiado el pseudolenguaje, las estructuras secuenciales y selectivas,

solo, queda resolver algunos ejercicios para aplicar la metodología para la

resolución de problemas bajo el enfoque orientado a objetos.

Resolución de problemas, con una y dos clases de objetos, utilizando estructuras secuenciales y selectivas.

A continuación se estudian algunos ejemplos usando este tipo de estructuras. Ejercicio 1

En una calculadora, dado 2 números diferentes (Numero1, Numero2) enteros,

indicar cual es el mayor valor.

Solución:

Aplicando la metodología estudiada se tiene.

Análisis:

Primero se debe subrayar la lista de sustantivos y verbos o frases con verbos para

crear la lista, en este ejemplo sería:

a) Análisis del problema:

Lista Clasificación Numero1------------------------------------------ Atributo/Calculadora Numero2------------------------------------------ Atributo/Calculadora Calculadora-------------------------------------- Clase Indicar cual es el mayor ---- ----------------- Método/Calculadora

Page 31: Guia Didactica de La Unidad v. Lapso 2014_1

31

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Todos sabemos que la forma de calcular el mayor valor entre numero1 y Numero2

(sabiendo que son valores diferentes) es:

si (Numero1 > Numero2 ) ayor ←Numero sino ayor ←Numero

Diseño de la estructura de la clase Calculadora

Calculadora

entero Numero1 entero Numero2

Asignar_Numero1(entero ↓ Num1) Asignar_Numero2(entero ↓ Num2) entero Sacar_Numero1() entero Sacar_Numero2

entero IndicarMayor()

Implementación en pseudolenguaje

// Definición de la estructura de la clase clase Calculadora

inicio

privado: entero Numero1,Numero2

publico:

//Métodos para asignar o meter datos Asignar_Numero1(entero ↓ Num1)

Asignar_Numero2(entero ↓ Num2)

//Métodos para sacar datos

entero Sacar_Numero1() entero Sacar_Numero2()

// Otros métodos propios del objeto

entero IndicarMayor()

fin // Calculadora

//Métodos propios de la clase Calculadora Asignar_Numero1( entero ↓ Num1)

inicio Numero1 Num1

fin Calculadora Asignar_Numero2( entero↓ Num2)

inicio Numero2 Num2

fin

Page 32: Guia Didactica de La Unidad v. Lapso 2014_1

32

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

entero Calculadora Sacar_Numero1()

inicio

retornar Numero1

fin entero Calculadora Sacar_Numero2()

inicio

retornar Numero2

fin entero Calculadora IndicarMayor()

inicio

entero Mayor

si (Numero1 > Numero2) Mayor ← Numero1

sino Mayor ← Numero2

retornar Mayor

fin

// Programa de aplicación

principal( )

inicio

Calculadora ObjCalculadora // Creación del objeto InterfazEntrada(ObjCalculadora)

InterfazSalida(ObjCalculadora)

fin

InterfazEntrada(Calculadora ↑ ObjCalculadora)

inicio entero Num1, Num2 // Definición de variables

escribir “Escriba el numero 1”

leer Num1

ObjCalculadora.Asignar_Numero1(Num1) escribir “Escriba el numero 2”

leer Num2

ObjCalculadora.Asignar_Numero2(Num2)

fin InterfazSalida(Calculadora ↓ ObjCalculadora)

inicio

escribir”El numero 1 es “ , ObjCalculadora.SacarNumero1( )

escribir”El numero 2 es “ , ObjCalculadora.SacarNumero2( )

escribir (“El Mayor es: “,ObjCalculadora.IndicarMayor()) fin

Page 33: Guia Didactica de La Unidad v. Lapso 2014_1

33

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Actividades de control

1. ¿Cambia el método IndicarMayor si los números enteros del

ejercicio anterior pudieran ser iguales?

2. Si hay cambios ¿Cuáles serian?

3. Realice el análisis al siguiente ejercicio. En una calculadora

dados dos números, Numero1 y Numero2, indicar si son

iguales o si hay uno mayor.

Actividades de control

Resuelva el siguiente ejercicio. Si se tienen tres números reales y nos

piden calcular el mayor de ellos. No se sabe nada de si algunos de ellos

están repetidos.

Reúnase con sus compañeros de clase, virtual o presencial, para

comparar sus resultados.

Actividades de control

Trate de resolver el próximo ejercicio 2, sin antes ver la solución de

sus compañeros, luego compare los resultados.

Actividades de control

1) Resuelva el resto de los ejercicios de la sesión EJERCICIOS

PROPUESTOS. Luego, si tiene dudas consulte con su profesor o

preparador

Page 34: Guia Didactica de La Unidad v. Lapso 2014_1

34

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

2) Reúnase con sus compañeros de clase, en forma virtual (a través de foros o

Chat) o presencial, para intercambiar soluciones y puntos de vista.

Le sugiero realizar todas las actividades de control que le permite poner a

prueba los conocimientos adquiridos.

Recuerde que siempre estoy dispuesta a darle ayuda. Consulte de manera

presencial, en clase o de manera virtual a través de los foros abiertos para tal

fin.

Page 35: Guia Didactica de La Unidad v. Lapso 2014_1

35

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Prueba y/o simulación de los Modelos elaborados

Es importante que se realice una corrida en frio sobre el algoritmo, escogiendo un

conjunto de datos de entrada, ejecutando manualmente cada instrucción y verificar

que los resultados obtenidos son los esperados de acuerdo al conjunto de datos

de entrada.

Este aspecto se ha desarrollado en forma presencial.

Ejercicios propuestos

Realice el Análisis, Diseño y pseudolenguaje para cada uno de los siguientes

planteamientos

1. Una empresa desea calcular los años de servicio que tiene un empleado. Para

ello se conoce del empleado el nombre y el año de ingreso. Se pide que lea

el año actual y calcule los años de servicios en la empresa

2. Una farmacia desea calcular el sueldo neto a un empleado, sabiendo que tiene

un sueldo base y un bono. Además tiene que descontar un monto que adeuda.

También desea calcular el porcentaje que le descontaron del sueldo base.

3. Un cajero a la hora del cierre debe hacer cuadre de caja, de la siguiente forma:

El dinero que tiene en caja al abrir mas el total de dinero recibido en efectivo

durante el día mas el total de dinero recibido a través todos los recibos de pago

generados con el pago de tarjetas de crédito y debito. En esta tienda no se

acepta como forma de pago “cheques”. Además se debe calcular el

Page 36: Guia Didactica de La Unidad v. Lapso 2014_1

36

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

porcentaje que representa el dinero recibido en efectivo con respecto a la

cantidad de dinero recibido en el día.

4. Un restaurant desea incrementar el sueldo de un trabajador en base a los

siguientes criterios: para los mesoneros el 10%, para el personal

administrativo y de cocina el 15% y para el personal obrero el 20% sobre el

sueldo actual. Se dispone de los siguientes datos del trabajador: cedula, tipo

de trabajador, sueldo actual y años de servicio. Se requiere determinar el

nuevo sueldo para el trabajador. Por otra parte, si el trabajador tiene más de

10 años de servicio en el restaurant se le hace un aumento adicional de Bs.F

500,00 por cada año por encima de 10 años.

5. Un colegio desea incrementar el sueldo de un empleado de acuerdo a lo

siguiente:

Tipo de empleado Incremento (%)

Docente 20

Administrativo 15

Obrero 10

Del empleado se tiene cedula, tipo de empleado y sueldo actual, se requiere

mostrar: Nuevo sueldo del empleado

6. En una empresa tiene por el cliente: nombre, días de atraso y monto de la

deuda. Imprima por el cliente su nombre, monto de la deuda y calcule el

monto de interés a cancelar por atraso de pago. Conociendo que:

Page 37: Guia Didactica de La Unidad v. Lapso 2014_1

37

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Días de atraso % de interés sobre el

monto de la deuda

>= 30 y < 60 2

>= 60 y <= 90 5

> 90 y <= 120 7

> 120 15

No olvide realizar la(s) actividad(es) de evaluación, la encuentra

disponible en línea.

Muy bien!!!!!!!!!! FELICITACIONES, usted ha logrado concluir con éxito este

tema. Hemos finalizado la unidad V, gracias a su desempeño e interés.

Page 38: Guia Didactica de La Unidad v. Lapso 2014_1

38

Unidad V: Implementacion de modelos orientados a objetos con estructuras Secuenciales y Selectivas. Profa. Erys Piñero

Junio 2014

Referencias

Booch, Grady (1996). Analisis y Diseño orientado a objetos con aplicaciones.

Editorial Addison-Wesley

Cobo Yera, Angel(2005). Programar desde un punto de vista científico. Editorial

Visión libros.

Garrido Carrillo, Antonio (2005). Fundamentos de programación en C++. Delta Publicaciones.

Flores Cueto, Juan José (2003). Método para la solución de problemas utilizando la

programación orientada a objetos. Universidad de San Martín de Porres. Facultad de Ingeniería y Arquitectura.

Joyanes, L. (2003) Fundamentos de programación. Algoritmos, estructuras de

datos y objetos (3ª ed.) Madrid. España: MacGraw-Hill.

Joyanes, L. (2006) Programación en C++. Algoritmos, estructuras de datos y

objetos (2ª ed.) Madrid. España: MacGraw-Hill.

Savitch, Walter. (2007) Resolución de problemas con C++. (5ª ed.) Pearson

Educación.

Sitios Web recomendados:

http://www.desarrolloweb.com/articulos/2199.php

http://www.desarrolloweb.com/articulos/2225.php