Sunteți pe pagina 1din 42

1

Semestre 2
Fascculo
1
Lenguaje de
Programacin



Lenguaje de
programacin
Semestre 2
Lenguaje de programacin



















Lenguaje de programacin


Semestre 2
Tabla de contenido Pgina
Presentaci de la asignatura 1
Competencias generales 2
Contenido mnimo de la asignatura 5
Introduccin 9
Conceptos previos 10
Mapa conceptual Fascculo 1 12
Logros 13
Fases para la resolucin de problemas a travs
del computador 13
Componentes necesarios para la construccin de algoritmos 21
Paradigma Orientado a Objetos (POO) 24
Los problemas y sus soluciones por medio de objetos 27
Actividad de trabajo colaborativo 29
Resumen 30
Bibliografa recomendada 31
Nexo 31
Anexo 1 33
Anexo 2 36

Crditos: 3
Tipo de asignatura: Terica Prctico










Lenguaje de
programacin
Semestre 2
Lenguaje de programacin
Copyright2008 FUNDICIN UNIVERSITARIA SAN MARTN
Facultad de Universidad Abierta y a Distancia,
Educacin a Travs de Escenarios Mltiples
Bogot, D.C.

Prohibida la reproduccin total o parcial sin autorizacin
por escrito del Presidente de la Fundacin.

La redaccin de este fascculo estuvo a cargo de
JAIME ALBERTO GUTIERREZ
Docente tutor Programa de Ingeniera de Sistemas a Distancia.
Sede Bogot, D.C.

Orientacin a cargo de;
ELIZABETH RUIZ HERRERA
Directora Nacional de Material Educativo.

Diseo grfico y diagramacin a cargo de
SANTIAGO BECERRA SENZ
ORLANDO DAZ CRDENAS

Impreso en: GRFICAS SAN MARTN
Calle 61A No. 14-18 - Tels.: 2350298 - 2359825
Bogot, D.C., Febrero de 2010












1
Fascculo No. 1
Semestre 2
Lenguaje de programacin

Lenguaje de
programacin

Presentacin de la asignatura
El desarrollo tecnolgico es sin duda una de las innovaciones que ms
fomenta el crecimiento de la economa y la formacin de una nueva forma
de vislumbrar y entender el mundo. En este sentido, los lenguajes de
programacin se han convertido en los ltimos aos en herramientas de
primer orden en la generacin de soluciones, permitiendo extender el
poder de la algoritmia hacia el campo prctico de la aplicacin implemen-
tativa. El boom de Internet durante la dcada de los noventa, as como el
auge de las tecnologas y metodologas orientadas a objetos ha facilitado
la creacin de nuevas plataformas y esquemas de pensamiento ingenieril
que han revolucionado la forma de trabajar de millones de personas
alrededor del mundo.

Una de dichas plataformas es Java, la cual posee una herramienta pode-
rosa: el lenguaje de Programacin Java, cuya caracterstica distintiva prin-
cipal es su independencia de la plataforma en la cual se encuentre ejecu-
tando la aplicacin. Desde su creacin por parte de Sun Microsystems,
Java ha pasado a representar un papel muy importante en la industria del
desarrollo de Software tanto personal como empresarial a nivel mundial,
debido a su popularidad entre organizaciones y programadores que
constantemente brindan aportes valiosos al desarrollo de esta plataforma.

Lo anterior y el hecho de ser orientada a objetos, hace de Java una plata-
forma adecuada no slo como estndar para el desarrollo de software,
sino porque implementa muchas de las mejores prcticas en Ingeniera de
Software, tanto actuales como futuras. As mismo, ofrece herramientas y
libreras para el manejo de la concurrencia, conectividad con bases de
datos y flujos de entrada y salida. Estas son caractersticas que el Inge-
niero de Sistemas y Computacin debe conocer y aprovechar al mximo,
ya que son la puerta de entrada hacia el mundo de las aplicaciones

2


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
empresariales, una filosofa de desarrollo que ahora est avasallando el
mercado moderno.

Competencias generales de la asignatura
Los estudiantes a travs del contenido deben alcanzar el desarrollo de las
siguientes habilidades, actitudes y aptitudes:

Competencia comunicativa:
Expresar apropiadamente problemas de programacin mediante la
definicin formal de su contexto, identificando el mundo de un problema
y enfocando el aspecto del diseo como herramienta para llegar a la
solucin.
Saber expresar un problema de programacin y plasmarlo a travs de
casos de uso, diagramas de clase y finalmente cdigo fuente de un
lenguaje nativo de programacin orientado a objetos.
Definir apropiadamente clases con su apropiada auto - documentacin
interna, con el objeto de fomentar la organizacin en la estructura de las
tcnicas modernas de programacin, y con ello propender por el
mantenimiento y la reusabilidad de las aplicaciones de Software.

Competencia cognitiva:
Capacidad para entender cules son las principales herramientas del
anlisis lgico y matemtico en la elaboracin de soluciones
algortmicas.
Habilidad para entender las diferencias entre los distintos tipos de
programacin y capacidad para llevar dichos conocimientos a la
realizacin de procedimientos de solucin de problemas del entorno
social y cultural.
Capacidad para entender qu tipo de estructura de programacin
aplicar, dependiendo de los requerimientos y necesidades postulados

3
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
por un problema de carcter procedimental o de automatizacin.
Destreza en el manejo de los principales conceptos de la orientacin a
objetos, los cuales en ltima instancia son la base del desarrollo actual
de los paradigmas contemporneos de programacin.

Competencia contextual:
Habilidad para definir la estructura visual de un algoritmo y llevar dicha
representacin a la implementacin concreta bajo un lenguaje de
programacin orientado a objetos, en este caso, Java.
Capacidad para distinguir entre los diversos tipos de datos y emplearlos
adecuadamente a la hora de plasmar conceptos del mundo real, en
representaciones algormitcas abstractas y luego en sus implementacio-
nes concretas a nivel de pseudocdigo y cdigo fuente nativo.
Destreza en la creacin de clases de Java y su compilacin empleando
tanto herramientas rudimentarias de compilacin y depuracin, como
IDES de programacin ms especializados.
Habilidad para identificar los principales paquetes y clases de Java,
tiles para crear bibliotecas personalizadas de programador.

Competencia valorativa:
Analizar la importancia de la programacin como una herramienta de
construccin de soluciones a los problemas de la vida cotidiana.
Tener habilidad para trabajar en equipo, valorando la opinin ajena y
generando criterios y patrones de anlisis lgico que le faciliten la
discusin de los problemas, en aras de lograr soluciones ptimas y
realizables.
Formar un criterio a la hora de toma decisiones sobre qu solucin de
implementacin de cdigo puede ser la ms pertinente, ajustando las
necesidades del desarrollo a la capacidad de cmputo disponible y a
los requerimientos derivados de los clientes en cuestin.

4


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2































5
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
Contenido mnimo de la asignatura

Fascculo 1
Introduccin al Paradigma Orientado a Objetos (POO)
Fases para la resolucin de problemas a travs del computador
Componentes necesarios para la construccin de algoritmos
Paradigma Orientado a Objetos
Los problemas y sus soluciones por medio de objetos.

Fascculo 2
Caracterizacin del Lenguaje de Programacin
Anlisis de las soluciones
Metodologa para la solucin de problemas con el enfoque de objetos
Ejemplos de problemas resueltos con objetos
Desarrollo de mtodos para los objetos
Tipos de datos. Uso de funciones predefinidas
Ejemplos de conversin de algoritmos a mtodos de clases en Java

Fascculo 3
Mtodos, estructura, encapsulamiento y administracin de errores
Elementos del lenguaje algortmico. Estructura de un algoritmo
Implementacin de mtodos en Java (La Declaracin de Mtodo, Devolver
un Valor desde un Mtodo, Un Nombre de Mtodo, Caractersticas
Avanzadas de la Declaracin de Mtodos)
Pasar informacin a un Mtodo (Tipos de Argumentos, Nombres de
Argumentos, Paso por Valor)
El cuerpo de un Mtodo
Controlar el acceso a los miembros de la Clase (Private, Protected, Public,
Acceso de Paquete)
Constructores
Excepciones

6


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
Fascculo 4
Herencia, polimorfismo e implementacin de mtodos heredados
Subclases, Superclases y Herencia
Crear Subclases
Escribir Clases y Mtodos Finales
La Clase Object (El mtodo equals(),El mtodo getClass(),El mtodo
toString())
Qu es una Interface? (Definir un Interface, Sobrecarga de mtodos)

Fascculo 5
Organizacin de datos en arreglos y vectores. Algoritmos de
bsqueda y ordenamiento
Arrays de una Dimensin. Utilizar slo un Inicializador
Utilizar slo la Palabra Clave "new"
Utilizar la palabra clave "new" y un Inicializador
Trabajar con un array uni-dimensional
Algoritmos de bsqueda de datos en vectores

Fascculo 6
Introduccin al modelo de ventanas e interfaces grficas del lenguaje
Java
Sobre el JFC y Swing
Visita Rpida por el Cdigo de un Programa Swing
Herencia de Componentes y Contenedores
Control de Distribucin
Manejo de Eventos
Reglas Generales del Uso de Componentes

Fascculo 7
Profundizacin de Swing
Cmo crear dilogos?

7
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
Contenedores Intermedios
Uso de Paneles en Java
Ejemplos de manejo de eventos
Reglas Generales para Escribir Oyentes de Eventos

Fascculo 8
Applets y aplicaciones en navegadores Web
Qu es un APPLET?
Appletviewer
Ciclo de vida de un APPLET
Etiqueta APPLET y paso de parmetros
Clase Graphics y mtodos de dibujo de primitivas
Eventos


















8


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2































9
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
Blueprint:
En ingls (impresin azul) es
una especie de reproduc-
cin en papel, usualmente
utilizada como dibujo tc-
nico, documentacin de ar-
quitectura o diseo de inge-
niera. En forma ms detalla-
da, un blueprint es un tr-
mino usualmente utilizado
para hacer alusin a un plan
detallado para el diseo de
un sistema.
Introduccin
Durante los ltimos aos, el desarrollo de Software se ha convertido en
una industria en constante crecimiento donde cada vez ms observamos la
aparicin de nuevos paradigmas en el desarrollo no slo de las soluciones
informticas, sino en la generacin de nuevas metodologas y marcos de
trabajo capaces de estructurar proyectos de dimensiones cada vez ms
crecientes.

El proceso de construccin de aplicaciones sigue igualmente un proceso
escalar y evolutivo, donde el estudiante de Ingeniera de Sistemas debe
tener un profundo conocimiento de todas las etapas necesarias para
desarrollar Sistemas Informticos, comenzando con los fundamentos de la
lgica programacional hasta llegar a las etapas ms evolucionadas de la
Ingeniera y la Arquitectura de Software.

Teniendo muy en cuenta el hecho de que en la actualidad existen una
infinitud de lenguajes de programacin, que desde las ms diversas
perspectivas han permitido estructurar gran cantidad de aplicaciones, es
muy importante que desde el principio se retome la idea fundamental de
que el diseo y la lgica algortimica son la base de cualquier aplicacin
computacional. No slo por orden estructural de las cosas, sino porque al
realizar un apropiado diseo de ingeniera es posible construir soluciones
ms slidas y fuertes, capaces de brindar seguridad y confiabilidad a
quienes en ltima instancia, emplearn las aplicaciones: Los usuarios.

Este primer fascculo de Lenguaje de Programacin es una invitacin a
realizar una profunda reflexin sobre este tema, a analizar el impacto del
diseo en la estructuracin de las aplicaciones y a visualizar los algoritmos
como el Blueprint original para la creacin de aplicaciones de computa-
dora, tiles y funcionales.

10


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
Conceptos previos
Antes de iniciar con el estudio del mundo de la Programacin Orientada a
Objetos, debe recordar que la esencia de la programacin est en la
algortmica, es decir, en la ciencia de disear estructuras de anlisis lgico,
que fundamentadas en los condicionales, los ciclos, las asignaciones y la
definicin de variables, permitan resolver cualquier problema de procesa-
miento de informacin. Tambin es importante que reconozca la importan-
cia de las variables como elementos de almacenamiento de datos, que a
travs de relaciones de procesamiento y clculo, permiten resolver un
problema determinado y finalmente llevar al usuario final, las respuestas a
las preguntas derivadas del planteamiento de un problema programtico.

De igual manera, se hace necesario un repaso de conceptos vistos
anteriormente, as pues resuelva el siguiente cuestionario:

Cul es la principal diferencia entre variables y constantes?
Por qu es importante primero disear el algoritmo y luego proceder a
la programacin especfica del mismo bajo el lenguaje?
Qu es una estructura decisional y cules son los tipos de decisiones
que existen?
Para qu sirve un ciclo repetitivo como el para, el repita mientras y el
ejecute mientras?
Qu ventajas tiene la estructuracin de un algoritmo en el formato
genrico del pseudocdigo?
Desarrolle un algoritmo bsico para leer el precio de un conjunto de n
productos y calcular el monto de la factura total de la venta de los
mismos, calculando un IVA del 17% para todos aquellos productos cuyo
costo sea mayor a $5000.00. El resto que no cumplan con esta
condicin tienen un IVA aplicable del 16%.


11
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
Desarrolle un algoritmo que permita leer un valor numrico y determinar
si dicho valor es: a) positivo o negativo; b) par o impar; c) decimal o
entero y d) Divisible exactamente por 2 o no.
Desarrolle un algoritmo para leer dos nmeros enteros y determinar si la
suma, la resta, el producto y el cociente entre ellos es un nuevo nmero
que al dividirlo entre ambos operandos genere como cociente un
nmero par o impar. (Ver la hoja de clculo que se muestra a
continuacin):












Desarrolle un algoritmo que lea una cadena de caracteres e indique la
longitud de la misma, contando todos los caracteres individuales que la
forman. No es vlido emplear la funcin length() si est trabajando la
implementacin bajo Java.
Desarrolle un algoritmo para leer dos nmeros y definir si la suma de los
mismos genera un nmero par o impar.





12


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
Mapa Conceptual fascculo 1





























13
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2


Al finalizar el estudio del presente fascculo, el estudiante estar en capacidad
de:

Entender la esencia de las clases y los objetos
Verificar los principales componentes en el diseo de una aplicacin Java
Comprender la esencia del paradigma orientado a objetos
Retomar la esencia de la programacin bsica y estructurada y la tomar
como base para migrar hacia el paradigma de objetos y las herramientas
de su implementacin.

Fases para la resolucin de problemas a travs del
computador

La computadora personal es antes que nada, una mquina y como
mquina que es, responde a las falencias de quienes interactan y operan
con ella. Pero igualmente, cuando se realiza una correcta estructuracin
algortmica de una solucin para computadora, esta finalmente ejecutar
con precisin el conjunto global de instrucciones diseadas por el
especialista en la programacin de dicha aplicacin. En primer lugar, es
importante tener en cuenta que un Software se construye bajo los
siguientes principios:

a. Recoleccin detallada de los requerimientos del usuario
b. Definicin de los casos de uso o funcionalidades que el Sistema
proveer a partir del anlisis de los requisitos.
c. Especificacin de una descripcin muy detallada de los casos de uso a
nivel de todos los pasos necesarios para llegar a su adecuada y
correcta ejecucin.
d. Extraccin de los objetos candidatos que potencialmente implemen-
tarn las funcionalidades descritas en las especificaciones o caracteriza-
ciones de los casos de uso.
e. Especificacin de los atributos de informacin que condensarn los
datos crticos manejados por el Sistema y definidos en la especificacin
del problema de programacin.
Logros
Logros Logros

14


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
UML:
Lenguaje Unificado de Mo-
delado (UML, por sus siglas
en ingls, Unified Modeling
Language) es el lenguaje de
modelado de sistemas de
software ms conocido y
utilizado en la actualidad;
est respaldado por el OMG
(Object Management
Group). Es un lenguaje gr-
fico para visualizar, especi-
ficar, construir y documentar
un sistema.
f. Generacin de los cuerpos bsicos de los mtodos que se encargarn
de implementar la lgica algortmica de las funcionalidades del Sistema.
g. Definicin de los Diagramas de UML encargados de reflejar el cuerpo
arquitectnico de la solucin.
h. Codificacin de las Clases en el lenguaje o plataforma destino de
programacin que se encargar de la implementacin.
i. Pruebas e integracin de los mdulos que forman la aplicacin, y
finalmente
j. Implantacin e instalacin Software de la solucin para ser probada
con los usuarios y determinar la convalidacin de los requerimientos
funcionales iniciales.

No obstante, como se observa, toda esta receta de cocina, muy fcil a
simple vista, requiere de un proceso riguroso de definicin de un pro-
blema, pero lo ms importante, del anlisis del mismo con el fin de lograr
resultados concretos. En la programacin estructurada, no obstante, el
anlisis es mucho ms simplista, por lo que al programar bajo este modelo
se incurre en el riesgo de no tener en consideracin todos los escenarios
posibles y cometer posteriores errores en el funcionamiento de una
aplicacin. Donde si la programacin estructura comienza a convertirse en
un pilar fundamental en la programacin orientada hacia los objetos, es en
el poder definir bien una secuencia algortmica de pasos que con orden,
estructura y forma, permitan dar respuesta a un problema puntual de
procesamiento de informacin. Veamos el siguiente caso:

Ejemplo
Una empresa de fabricacin de compotas requiere tener un sistema para
facturar sus ventas con base en las siguientes especificaciones: Toda
compota marca Rostington cuya venta sea menor a 100 unidades tendr
un descuento del 20% sobre el valor de la venta; si est entre las 101 y

15
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
200 unidades se har un descuento del 25% y si est entre 201 unidades
en adelante del 45%. Si las compotas de un lote marca Premiere cumplen
las siguientes condiciones, entonces los descuentos sern como los que
se citan a continuacin:
Cantidad de Compotas Descuento sobre la Venta
1-100 unidades 15%
101-200 unidades 35%
201 unidades en adelante 50%

Las compotas Rostington se venden a $5000.00 la unidad, mientras que
las Premiere a $10.000.00. Una empresa que requiere de mucha precisin
en sus procesos y que adems es algo ambiciosa en el campo de las
ventas de productos para recin nacidos. Como Ingeniero de Sistemas se
le requiere para disear una aplicacin que se encargue de garantizar la
venta de estos productos, siguiendo las reglas de negocio definidas por la
compaa.

La definicin de un problema como estos, implica considerar varios
criterios:
1. Establecer qu debera solicitar la aplicacin antes de generar una
factura de venta de un lote de compotas especfico.
2. Indicar al sistema cuntas compotas se van a vender y de qu categora
son.
3. Realizar la facturacin de manera individual considerando el nmero de
unidades y luego, con base en decisiones establecidas por los rangos
descritos en el problema, realizar la aplicacin del porcentaje especfico
y luego descontarla del total de la venta bruta de las compotas.
4. Generar la impresin de la factura, incluyendo la venta bruta, el
porcentaje de descuento, la cantidad de unidades, la marca de la
compota, el descuento y finalmente la venta neta de las compotas, es
decir:

16


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2










Figura 1.1
Representacin de la Solucin de
Venta de Compotas en Excel

Ahora, el reto est en construir un algoritmo que solucione este problema y
posteriormente acudir a un lenguaje como C++, Java, Pascal u otro, y
construir un aplicativo que haga esto una realidad.

Para ello, debemos establecer primero, el conjunto global de variables que
estarn en juego y con base en la auto- descriptividad de los nombres de
las mismas, definir los tipos de datos que se emplearn para procesar
coherentemente la informacin. De esta manera, se tendra algo como
esto:
Variable Tipo de
Dato
Tipo de
Almacenamiento
Solucin en Excel
Tipo de Compota
(tipoCompota)
Cadena de
caracteres
(String)
Variable

Nmero de Compotas
(numeroCompotas)
Entero (int) Variable

Precio de la compota
(precioCompota)
Real (float
o double)
Variable

Descuento (descuento) Real (float
o double)
Variable

Venta Bruta (ventaBruta) Real (float
o double)
Variable


17
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
Pseudocdigo:
(falso lenguaje), es una
serie de palabras lxicas y
gramaticales referidas a los
lenguajes de programacin,
pero sin llegar a la rigidez
de la sintaxis de estos ni a
la fluidez del lenguaje colo-
quial. Esto permite codificar
un programa con mayor
agilidad que en cualquier
lenguaje de programacin,
con la misma validez se-
mntica.
Venta Neta (ventaNeta) Real (float
o double)
Variable

Porcentaje de Descuento
(porcentajeDescuento)
Real (float
o double)
Variable


Tabla 1.1
Variables del problema de venta de compotas.

Como se observa, en la solucin Excel, corresponde a los campos vistos
en la tabla que automatiza igualmente la solucin al problema.

Llevando, por tanto, este problema a una solucin algortmica en
Pseudocdigo, se obtendra:

Algoritmo VentaCompotas
Inicio
//1. Definicin de las variables
Cadena tipoCompota = "";
Entero numeroCompotas = 0;
Real precioCompota = 0.0;
Real descuento = 0.0;
Real ventaBruta = 0.0;
Real ventaNeta = 0.0;
Real porcentajeDescuento = 0.0;

//2. Lectura de los datos
Leer ("Ingrese la marca de la compota (1 para Rostingtong, 2
para Premiere", tipoCompota);
Leer ("Ingrese la cantidad de compotas para la venta:
",numeroCompotas);

//3. Ejecucin de los clculos
si (tipoCompota == "1")
Inicio Si
//Asignamos el precio
precioCompota = 5000.00;

//Compotas tipo Rostington
si (numeroCompotas < 100)
Inicio Si
porcentajeDescuento = 0.20;
Fin Si

si (numeroCompotas >= 100 AND numeroCompotas <
200)
Inicio Si

18


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
porcentajeDescuento = 0.25;
Fin Si
DLC
Inicio DLC
porcentajeDescuento = 0.45;
Fin DLC
Fin Si
DLC
Inicio DLC
//Compotas Premiere

//Asignamos el precio
precioCompota = 10000.00;

si (numeroCompotas < 100)
Inicio Si
porcentajeDescuento = 0.15;
Fin Si
DLC
si (numeroCompotas >= 100 AND numeroCompotas <
200)
Inicio Si
porcentajeDescuento = 0.35;
Fin Si
DLC
Inicio DLC
porcentajeDescuento = 0.50;
Fin DLC
Fin DLC

//Calculamos la venta bruta
ventaBruta = numeroCompotas * precioCompota;
//Calculamos el descuento
descuento = ventaBruta * porcentajeDescuento;
//Calculamos la venta neta
ventaNeta = ventaBruta - descuento;

//4. Imprimimos los resultados
si (tipoCompota == "1")
Inicio Si
Imprimir("Se realiz una venta de compotas marca Rostington");
Fin Si
DLC
Inicio DLC
Imprimir("Se realiz una venta de compotas marca Premiere");
Fin DLC

//Nmero de compotas vendidas

19
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
Imprimir("La cantidad de compotas vendidas fue de:
",numeroCompotas);
//Precio de la compota
Imprimir("El precio de la compota es de: ",precioCompota);
//Venta bruta
Imprimir("La venta bruta de las compotas es de ",ventaBruta);
//El porcentaje de descuento aplicado
Imprimir("El porcentaje de descuento aplicado fue de
",(porcentajeDescuento * 100),"%");
//El descuento
Imprimir("El descuento de la venta fue de: ",descuento);
//La venta neta
Imprimir("La venta neta fue de: ",ventaNeta);
Fin.
Figura 1.2
Representacin en pseudocdigo de la solucin del problema de las compotas.

Algoritmo, que si es implementado y ejecutado en Java, generara
resultados como estos:









Figura 1.3
Implementacin del Algoritmo en el lenguaje de programacin Java.


















Figura 1.4
Ejecucin de la Aplicacin (Ingreso del tipo de compota).

20


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2






Figura 1.5
Ejecucin de la aplicacin (Ingreso de la cantidad de compotas).























Figura 1.6
Ejecucin de la aplicacin (Despliegue de los resultados).

21
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
Como se observa, este algoritmo es una implementacin de tipo
estructurado, puesto que todos los elementos que forman el corazn de la
implementacin de la aplicacin, se condensan en un solo bloque de
cdigo fuente, definido por la siguiente secuencia:





Componentes necesarios para la construccin de
algoritmos
Los algoritmos, antes que nada, son bloques especficos o en trminos
ms simples, recetas de cocina, que con precisin y minuciosidad se
emplean para resolver secuencial y estructuralmente un problema.
Gracias al avance de las matemticas y a la resolucin de los problemas
de procesamiento matemtico, la informtica y la computacin permitieron
la estructuracin de nuevos paradigmas para la generacin de soluciones
de automatizacin de procesos. Este fue el punto de partida para la
generacin de algoritmos cada vez ms estructurados y que posibilitaron a
lo largo del resto del siglo, organizar la esencia de la Ingeniera de
Sistemas.

Es importante recordar que la algoritmia brinda herramientas para construir
aplicaciones, basadas en el uso de smbolos y su correspondientes
elementos de notacin en el pseudocdigo o lenguaje intermedio (Ver
anexo 2), el cual finalmente se asemeja bastante a la sintaxis de los
lenguajes de programacin tanto comerciales como no comerciales (como
C, Visual Basic, Java, C#, entre otros), y que son los que finalmente se
usan para programar las aplicaciones de forma concreta y tangible.

1) Definicin de variables
2) Lectura de datos
3) Ejecucin de clculos
4) Impresin de resultados

22


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
Figura 1.7
Algoritmo para calcular el promedio de un
estudiante e indicar si aprob o reprob el
curso acadmico
Estas sentencias, se ven reflejadas, en algoritmos como el que se cita a
continuacin:
Inicio
Leer
nombre
Leer nota1,
nota2 y
nota3
nota1 < 0 && nota2 <
0 && nota3 < 0
Promedio = 0
Promedio = (nota1
+ nota2 + nota3)/3
Nombre
Promedio
S
No
Final
Promedio >= 6
Esta Aprobado
Esta Reprobado
S
No


23
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
Cuya representacin en pseudocdigo sera:
Programa CalculoPromedio;

Inicio
//Declaraciones de las variables.
Nombre: Cadena;
Nota1: Real;
Nota2: Real;
Nota3: Real;
NumeroNotas: Entero;
Promedio: Real;

//Inicializaciones
Nota1 = 0.0;
Nota2 = 0.0;
Nota3 = 0.0;
NumeroNotas = 3;
Promedio = 0.0;

Leer valor en Nombre;
Repita
Leer valor en Nota1;
Leer valor en Nota2;
Leer valor en Nota3;
Mientras (Nota1 < 0 Y Nota2 < 0 Y Nota3 < 0);

Promedio = (Nota1 + Nota2 + Nota3)/NumeroNotas;

Si (Promedio >= 6)
Comienzo Si
Imprimir Est aprobado;
Fin del Si
De lo contrario
Comienzo del De lo Contrario
Imprimir Est reprobado;
Fin del De lo Contrario

Imprimir Nombre;
Imprimir Promedio;
Fin.



Tenga muy presente que en el momento de implementar un al-
goritmo, independientemente de que se haga mediante un DFD o
un listado de instrucciones en pseudocdigo, debe realizar un

24


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
Modularidad:
Caracterstica por la cual un
programa de computadora
est compuesto de partes
separadas denominadas
mdulos. El diseo estructu-
rado es la tcnica de diseo
de algoritmos en que se ba-
sa la programacin modular,
paradigma de programacin
que persigue desarrollar
programas modulares.

Polimorfismo:
En programacin orientada
a objetos se denomina poli-
morfismo a la capacidad
que tienen los objetos de
una clase de responder al
mismo mensaje o evento en
funcin de los parmetros
utilizados durante su invoca-
cin.

Encapsulamiento:
En programacin orientada
a objetos, se denomina en-
capsulamiento al oculta-
miento del estado, es decir,
de los datos miembro, de un
objeto de manera que slo
se puede cambiar mediante
las operaciones definidas
para ese objeto.
anlisis profundo de las variables involucradas en el problema.
Discrimnelas, emplee una tabla para catalogarlas y lo ms impor-
tante nomnclelas autodescriptivamente para facilitar la codifica-
cin de las operaciones que se encargarn de dar respuesta al
problema de procesamiento de informacin.

Paradigma Orientado a Objetos
Durante los ltimos aos se ha hecho un especial nfasis en la forma de
estructurar la programacin de manera que se convierta en una
herramienta que propenda por la modularidad, es decir, por la capacidad
de hacer ms eficientes las tareas de automatizacin, recurriendo a
unidades funcionales denominadas mdulos, que en la forma alegrica de
piezas de rompecabezas, puedan ser utilizadas de mltiples formas para
generar a su vez, mltiples soluciones informticas.

La programacin estructurada durante las dcadas del 60, 70 y 80 fue una
solucin a muchos problemas de computacin, pero a medida que los
lenguajes de programacin comenzaron a sofisticarse, la programacin de
este tipo comenz a convertirse en una pesadilla para labores como el
mantenimiento de aplicaciones grandes y complejas. De ah la necesidad
de trabajar sobre un nuevo paradigma que propendiese por hacer ms
modulares, acoplables y mantenibles las soluciones de Software.

En este sentido, la Programacin Orientada a Objetos (POO u OOP segn
sus siglas en ingls) es un paradigma de programacin que usa objetos y
sus interacciones para disear aplicaciones y programas de computadora.
Est basado en varias tcnicas, incluyendo herencia, Modularidad,
Polimorfismo y Encapsulamiento. Su uso se populariz a principios de la
dcada de 1990. Actualmente son muchos los lenguajes de programacin
que soportan la orientacin a objetos.



25
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
Los objetos son entidades que combinan estado, comportamiento e
identidad:

El estado est compuesto de datos, ser uno o varios atributos a los
que se habrn asignado unos valores concretos (datos).
El comportamiento est definido por los procedimientos o mtodos con
que puede operar dicho objeto, es decir, qu operaciones se pueden
realizar con l.
La identidad es una propiedad de un objeto que lo diferencia del resto,
dicho con otras palabras, es su identificador (concepto anlogo al de
identificador de una variable o una constante).

La programacin orientada a objetos expresa un programa como un
conjunto de estos objetos que colaboran entre ellos para realizar tareas.
Esto permite hacer los programas y mdulos ms fciles de escribir,
mantener y reutilizar.

De esta forma, un objeto contiene toda la informacin que permite definirlo
e identificarlo frente a otros objetos pertenecientes a otras clases e incluso
frente a objetos de una misma clase, al poder tener valores bien dife-
renciados en sus atributos. A su vez, los objetos disponen de mecanismos
de interaccin llamados mtodos que favorecen la comunicacin entre
ellos. Esta comunicacin facilita a su vez el cambio de estado en los
propios objetos. Esta caracterstica lleva a tratarlos como unidades indi-
visibles, en las que no se separan ni deben separarse el estado y el
comportamiento.
Gracias a este paradigma, ha sido posible visualizar programas mucho
ms fciles de construir que adems son modulares, fciles de mantener y
que no requieren de la reestructuracin total del programa para garantizar
la implementacin de nuevas funcionalidades en su cuerpo de mtodos y
funciones. A continuacin, se presenta un ejemplo:

26


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
Ejemplo






Figura 1.8
Diagrama UML de la Clase ObjetoCalculadora.

(Ver la representacin en Java, en el Anexo No. 1.)

Como puede observarse en el ejemplo, se aplican los conceptos de la
POO, visualizados en los siguientes criterios:

El encapsulamiento se observa en las variables numero1, numero2 y
resultado, que son los datos manejados por la calculadora.
El polimorfismo se puede visualizar en la capacidad de los mtodos de
ser empleados para diferentes propsitos. Aunque no existen mtodos
polimrficos propiamente dichos en esta clase Java.
La modularidad se observa en la capacidad que pueden tener otras
clases de instanciar un objeto del tipo ObjetoCalculadora y de invocar
sus mtodos, sin que las dems clases puedan manipular la informa-
cin contenida en los atributos de la clase, accin que solo es hecha
por el objeto en cuestin (ObjetoCalculadora) y no, por los dems.

1.1

1) Elabore un algoritmo para calcular las races de la ecuacin


Teniendo en cuenta los siguientes casos:

a) Si a = 0 y b= 0, imprimiremos el mensaje de que la ecuacin es
degenerada.
b) Si a = 0 y b es diferente de 0, existe una raz nica con valor c/b.
c) En los dems casos se emplear la frmula

2) Elabore un algoritmo para calcular el valor de la pendiente de una
recta.

27
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2


Verifique que la diferencia entre y y1 no sea igual a cero y si lo es,
genere un mensaje que diga que no se puede calcular el valor de la
pendiente de la recta.

3) Elabore un algoritmo para calcular el salario neto de un empleado de
acuerdo a la siguiente frmula:


Donde SalarioBruto = (NumeroHorasTrabajadas x ValorHora)
DescuentoSalud = SalarioBruto * 15%
DescuentoPension = SalarioBruto * 14.5%

Los problemas y sus soluciones por medio de objetos
Los objetos son, ante todo, abstracciones de la realidad fsica y por lo
tanto, se emplean para simular el comportamiento de los objetos fsicos en
el mundo real. Igualmente competen una gran funcionalidad al representar
abstracciones no slo de cosas del mundo tangencial, sino tambin para
representar modelos de operacin de tareas cotidianas e implementar
funciones capaces de resolver tareas de procesamiento algortmico, como
por ejemplo, labores de lectura masiva de datos, recoleccin de informa-
cin sobre seres humanos o representar procesos de negocio de las
organizaciones a travs de operaciones y las relaciones entre dichos
procesos.

Gracias a ellos, es muy fcil producir soluciones que independicen la
presentacin (Interfaz Grfica de Usuario) de los mtodos de procesa-
miento de informacin. Esto permite que se puedan reutilizar los objetos
de forma transparente en otras aplicaciones, puesto que cada objeto se
encarga de exponer sus mtodos a los dems a travs de la visibilidad, un
concepto que trabajaremos con ms profundidad en otros fascculos, pero
que ahora se comprende como la capacidad del objeto de ofrecer sus
servicios de procesamiento a los dems, sin que estos otros tengan que

28


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
preocuparse por la forma como se implementan dichos procedimientos de
clculo y procesamiento.

As mismo, es importante considerar que gracias a la parametrizacin de
los mtodos es posible establecer formas genricas de capturar la informa-
cin, para que dependiendo del planteamiento del problema, sea posible
determinar formas ms genricas de procesar la informacin y no anclar la
implementacin del cdigo de la clase que implementa el objeto a valores
fijos que tal vez se deban posteriormente modificar para hacer que la
aplicacin se comporte de forma diferente. Un ejemplo claro se da en las
aplicaciones financieras: Cuando una nueva legislacin o una nueva regla
financiera o legal es establecida, la aplicacin que implementa la funciona-
lidad financiera debe estar en capacidad de operar con nuevos datos.
Veamos esto reflejado en el cdigo de un mtodo o funcin:
public double calcularImpuestoVentas (double valor)
{
double impuestoVentas = 0.0;
impuestoVentas = valor * 0.15;
impuestoVentas = impuestoVentas + (2 * valor);
return (impuestoVentas);
}

Como se observa, el valor del impuesto est anclado a multiplicar siempre
el valor por el 15%. De ser necesario aplicar un nuevo porcentaje de
impuesto, se tendra que modificar el cdigo del mtodo para que se viera
reflejado este valor, y al hacerlo, perderamos la trazabilidad del porcentaje
anteriormente utilizado.

As pues, utilizando el concepto de modularidad y capacidad de moldear
las operaciones, tal y como lo permite la programacin orientada a obje-
tos, tendramos ms bien una porcin de cdigo para el mtodo expresada
de la siguiente forma:
public double calcularImpuestoVentas (double valor, double
porcentajeImpuesto)

29
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
{
double impuestoVentas = 0.0;
impuestoVentas = valor * porcentajeImpuesto;
impuestoVentas = impuestoVentas + (2 * valor);
return (impuestoVentas);
}

Que, como se muestra, permitira seguir ejecutando la operacin, indepen-
dientemente del valor porcentual asignado al impuesto. As, slo se tendra
que modificar la interfaz de usuario que se encargara de capturar el dato
correspondiente a dicho valor porcentual. La funcionalidad del mtodo no
tendra que ser modificada, ni el cdigo fuente de la porcin de cdigo
reescrito o modificado, haciendo que se perdiera la trazabilidad del valor
utilizando anteriormente, para el caso del ejemplo, el del 15%.

1.2

Tomando como base los ejercicios algortmicos de la Actividad 1.1,
disee una Clase Java para cada problema, la cual ilustre los siguientes
elementos bsicos:

Atributos de la clase para identificar las variables clave de procesa-
miento en cada problema.
Un listado de los mtodos necesarios para realizar la implementacin
de los procesos requeridos por el algoritmo. Recuerde utilizar el
proceso de definicin de retornos, parmetros y nombres generales
para identificar los mtodos, empleando un verbo regular o en
infinito, tal como por ejemplo, calcularImpuesto,
obtenerPendienteRecta o calcularSalarioEmpleado, etc.
Desglose los elementos que emple en la implementacin estruc-
turada de los algoritmos de la Actividad 1.1 para definir mtodos o
funciones puntuales que resuelvan el problema, tomando como base
los ejemplos vistos en el fascculo.




Renase con sus compaeros (mximo 3 personas) y respondan las siguientes
preguntas de anlisis e investigacin:



30


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
a) Qu ventajas tiene la programacin como una herramienta para ayudar a
optimizar los procesos en las organizaciones y para facilitar el desarrollo de
tareas complejas y repetitivas?
b) Es posible desarrollar una aplicacin de computadora sin seguir un proceso
riguroso de anlisis de requisitos, sino simplemente optando por programar
directamente lo que se supone el programa debe implementar de manera
inmediata?
c) Cules son las grandes fallas que presentan actualmente las aplicaciones
informticas y porque cada vez se hace ms necesario contar con
metodologas rigurosas para el diseo de Sistemas de Software?
d) Puede la programacin ayudar a fomentar el pensamiento racional y analtico
en las personas del comn? Si su respuesta es afirma o negativa, justifiquen
la razn.



Como hemos observado a lo largo de este fascculo, la esencia del trabajo
de programacin, ms que un proceso mecnico de codificacin de
instrucciones de un lenguaje nativo de implementacin, est en una clara
definicin de requisitos de informacin, seguidos de la consecuente
validacin del proceso de anlisis necesario para establecer elementos
puntuales de definicin de un proceso algortmico: Variables, relaciones,
operaciones, tareas y finalmente, generacin de resultados a partir de
dichas labores de codificacin.

Cuando definimos correctamente algoritmos con sentido, lgica y
coherencia, las aplicaciones finalmente muestran sus resultados, ilustran
bien al usuario y generan las respuestas que tanto el programador como el
usuario del sistema, esperan para convalidar las necesidades planteadas
en los requerimientos originales de postulacin, diseo y posterior cons-
truccin de la aplicacin computacional. Tenga en cuenta este criterio:
Programar no es digitar, programar es analizar, construir y finalmente usar
para beneficio de los actores de un Sistema informtico.



31
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2


Allen Weiss, M. (2000). Estructuras de Datos en Java. Mxico, D.F.:
Pearson Education.
Deitel, H. M., & Deitel, P. J. (2004). CMO PROGRAMAR EN JAVA. Mxico,
D.F.: PEARSON EDUCATION.
Format, E. C. (1999). Java Enterprise In A Nutshell. New York.
Villalobos S., J. A., & Casallas G., R. (2006). FUNDAMENTOS DE
PROGRAMACIN - APRENDIZAJE ACTIVO BASADO EN CASOS. Mxico,
D.F.: PEARSON, Prentice Hall.



En el prximo fascculo se har mayor nfasis en los principales conceptos
de la programacin orientada a objetos, definiendo con una mayor
rigurosidad las estructuras que forman las clases en Java y la forma como
los objetos desarrollan sus relaciones. Igualmente se abordarn elementos
de sintaxis vistos en el curso anterior de Introduccin a la Programacin y
aprovecharemos dicho potencial para hacer aplicaciones ms robustas,
estructuradas y organizadas en su composicin.











32


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2































33
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
Anexo 1
Implementacin del problema del objeto calculadora

import javax.swing.JOptionPane;

/**
* @author Ingeniero Jaime Alberto Gutirrez Meja
* Fundacin Universitaria San Martn
* Espacio Acadmico: Lenguaje de Programacin
* Fascculo I: UNIDAD NO. I: INTRODUCCIN AL PARADIGMA
ORIENTADO A OBJETOS
*
* Ejemplo de un objeto destinado a realizar operaciones matemticas
* bsicas. En este caso, una calculadora
*/
public class ObjetoCalculadora
{
//Atributos de la clase
private int numero1;
private int numero2;
private int resultado;

//Constructor de la clase
public ObjetoCalculadora() {
super();
}

/*
Mtodos de lgica funcional de negocio
que alteran el comportamiento de los datos o atributos
de la clase
*/
public int calcularSuma ()
{
resultado = 0;
resultado = numero1 + numero2;
return (resultado);
}

public int calcularResta ()
{
resultado = 0;
resultado = numero1 - numero2;
return (resultado);
}


34


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
public int calcularMultiplicacion ()
{
resultado = 0;
resultado = numero1 * numero2;
return (resultado);
}

public int calcularDivision ()
{
resultado = 0;

if (numero2 != 0)
{
resultado = numero1 / numero2;
}
return (resultado);
}

/**
* @param args
* Programa principal que emplea los mtodos implementados
* en la clase
*/
public static void main(String[] args)
{
//Se instancia el objeto
ObjetoCalculadora calculadora = new
ObjetoCalculadora();

//Se asignan valores a los atributos de la clase
calculadora.numero1 = 25;
calculadora.numero2 = 20;

//Se ejecutan las operaciones
//Suma
calculadora.resultado =
calculadora.calcularSuma();
JOptionPane.showMessageDialog(null,"Suma: "
+ calculadora.resultado);

//Resta
calculadora.resultado = calculadora.calcularResta();
JOptionPane.showMessageDialog(null,"Resta: "
+ calculadora.resultado);

//Multiplicacion
calculadora.resultado =
calculadora.calcularMultiplicacion();

35
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
JOptionPane.showMessageDialog(null,"Multiplicacin: " +
calculadora.resultado);

//Divisin
calculadora.resultado =
calculadora.calcularDivision();
JOptionPane.showMessageDialog(null,"Divisin: " +
calculadora.resultado);
}

}//Fin de la clase























36


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
Anexo 2
Lista de elementos esenciales para el diseo de algoritmos
(Diagramas de Flujo y pseudocdigo)
Instruccin Smbolo en el Diagrama de Flujo Notacin en
Pseudocdigo
Uso
Inicio de
Algoritmo/Fin del
Algoritmo
Inicio/Fin

Inicio/Fin Se emplea para dar inicio o
finalizacin a la secuencia de
instrucciones del algoritmo
Instruccin o
Proceso de
Clculo
Instruccin

Instruccin;
Ejemplo:
a = b + c;
x = (2*n) + 3 q;
Se emplea para mostrar
instrucciones de clculo o
realizacin de asignaciones
como iniciar una variable o
asignarle un valor tras una
lectura de datos.
Instruccin de
impresin o
salida de
resultados
Resultado

Imprimir
(Resultado);
Se emplea para mostrar los
resultados derivados del
procesamiento de las
instrucciones al usuario (es
decir, la salida a la terminal
por defecto usada por el
lenguaje de programacin)
Instruccin para
lectura de datos
Variable

Leer (variable);
Leer (Mensaje de
peticin de
Entrada, variable);
Se emplea para garantizar la
entrada de datos al algoritmo y
su correspondiente asignacin
dependiendo del tipo de dato,
a la variable variable
asociada al proceso de lectura.
Subprocedimiento
o Funcin
calcularSuma (Entero a,
Entero b): Entero

Subprocedimiento
calcularSuma
(Entero a, Entero b):
Entero;
Se utiliza para representar
bloques de cdigo o funciones
predefinidas, tiles para la
realizacin de tareas repetitivas
o de automatizacin. En este
tipo de instruccin es
importante definir las entradas
(parmetros) y las salidas del
subprocedimiento con el fin de
definir su interaccin con el
programa o algoritmo
principal.
Preparacin para
ciclo para
para (i = 0; i < 100; i = i + 1)

Para (i = 0; i <
100; i = i +1)
Se emplea para implementar
un ciclo de repeticin para,
caracterizado para la ejecucin
de procesos de automatizacin
repetitivos y controlados por
una estructura de decisin
condicional.

37
Lenguaje de programacin

Lenguaje de
programacinI

Fascculo No. 1
Semestre 2
Preparacin para
casos
opcion

Casos (opcin)
Inicio casos
Opcion1:
Instrucciones;
Romper;
Opcion2:
Instrucciones;
Romper;
.
.
.
Por defecto:
Instrucciones;
Romper;
Fin Casos
Se emplea para construir una
instruccin de seleccin de
valores. Esta instruccin
permita seleccionar una,
dentro de un conjunto de
alternativas, con base en el
valor almacenado en un campo
variable denominado selector
(opcin) o campo controlador
de la estructura. Se utiliza
para simular una estructura
condicional de sis
encadenados donde cada
alternativa excluye a las dems
opciones.
Decisin Lgica
x > 100

Si (condicin
lgica)
Inicio Si
Instruccin parte
verdadera;
Fin Si
DLC
Inicio DLC
Instruccin parte
falsa;
Fin DLC;
La estructura de decisin
lgica (Si) o selectiva est
formada por una condicin de
tipo lgico que puede ser
simple o compuesta, de la que
salen dos posibles caminos:
un conjunto de acciones o
secuencias a ejecutar si el
resultado de la condicin es
verdadera; u otro conjunto de
acciones si el resultado de la
condicin es falsa. Se puede
dar e caso de que falte uno de
los grupos de instrucciones,
pero nunca los dos; esto sera
un camino nulo que implica no
tomar ninguna accin.

38


Lenguaje de programacin


Lenguaje de
programacin

Fascculo No. 1
Semestre 2
Flujo de
instrucciones

Orden descendente
de las instrucciones
ejecutadas por el
algoritmo. El
smbolo de flecha
hacia arriba solo es
aplicable en
algoritmos hechos
mediante DFD
(Diagrama de Flujo
de Datos), puesto
que en casos
especiales, cuando
un conjunto de
instrucciones como
un repita mientras o
un ejecute mientras
pasan de una
pgina a otra, es
necesario mostrar
la reconexin de las
instrucciones.
Representan la estructura
descendente de ejecucin de
las instrucciones realizadas
por el algoritmo durante su
flujo normal de operacin.
Tambin indican los caminos
alternativos que se generan en
instrucciones como las
decisiones condicionales, los
ciclos repetitivos o las
instrucciones de casos con
caminos de ejecucin alternos.
Conector Dentro
de Pgina
1

NO APLICA. Las
instrucciones en
forma de
pseudocdigo son
continuas de arriba
hacia abajo en el
papel.
Se utiliza para representar la
continuidad de las
instrucciones, cuando el
diagrama de flujo est siendo
dibujado en la misma hoja o
pgina.
Conector fuera de
pgina
1

1

NO APLICA. Las
instrucciones en
forma de
pseudocdigo son
continuas de arriba
hacia abajo en el
papel.
Se utiliza para representar la
continuidad de las
instrucciones, cuando el
diagrama de flujo pasa sus
secuencias instruccionales de
una pgina a otra. El smbolo
va hacia abajo cuando se pasa
de la pgina 1 a la 2, y hacia
arriba cuando se regresa de la
pgina 2 a la 1.

S-ar putea să vă placă și