Está en la página 1de 32

L gi ca de la pr

og ra m ac i n Fase anlisis
Lgica de la programacin

i c a d e l a p r o g ra
gramacin L g
o
Lgica de la pr
Ao 2012 - Edicin 01

p r o g ra m a ci n
lgica d e
Solucin de problemas

Introduccin
a la programacin
Fase de Anlisis

yecto
Actividad de pro
Definicin de
Requerimien- Estructuras selectivas
tos del Cliente

Actividad de Estructuras repetitivas


aprendizaje
de los elemen-
Identificacin
Produccin en multimedia

ra proyectos
Estructuras de datos
tos de diseo pa
multimedia
Herramientas para
la simulacin
Sena

Fase Anlisis Sena Produccin en multimedia 1


id o
Ta bl a de co nt en
id o Ta bl a de co nt en

Contenido Lgica de la programacin

01 02 03 04

Solucin de problemas Introduccin a la Estructuras selectivas Estructuras repetitivas


programacin
1.1. Introduccin a la solucin de proble- 3.1. Si Entonces (If Then) 4.1. Mientras que (While)
mas: Caractersticas, pasos para resolverlos,
2.1. Conceptos generales
estrategia para mejorar la compresin del 3.2. Si Entonces Sino (If Then Else) 4.2. Repetir para (For)
enunciado de un problema y las variables e
2.2. Algoritmos y diagramas de flujo
identificacin de los datos de un problema 3.3. Si Anidado 4.3. Hacer mientras (Do while)

2.3. Conceptos fundamentales


1.2. Relacin entre variables y caracters- 3.4. Si Multiple (Case) page

ticas: Relaciones parte-todo, de orden, con 36


2.4. Construccin de Algoritmos y Dia-
inversiones, con inversiones de orden y page
gramas de flujo 27
familiares.
page
11
1.3. Problemas acerca de las relaciones en-
tre dos variables: tablas numricas, lgicas
y conceptuales.

page 05 06
05

Estructuras de datos Herramientas para la page


59 Glosario
(Arreglos) simulacin
5.1. Arreglos en una dimensin o Vectores 6.1. Pseudocdigo LPP page
60 Bibliografa
5.2. Arreglos multidimensionales o Matrices 6.2. Diagramas de flujo DFD

Este material puede ser distribuido, co-

piado y exhibido por terceros si se mues-


page
44
page
57
page
61 Crditos
tra en los crditos. No se puede obtener

ningn beneficio comercial y las obras

2 derivadas tienen que estar bajo los mis- 3


Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia
mos trminos de licencia que el trabajo

original.
la
ob le m as
So lu ci n de pr

e
In tro du cc i n

Lgica d
prog ram a cin 01 Solucin de Problemas

r amacin , Es tructuras
c in d e pro b lemas, prog ie n ta para simulacin Con frecuencia la solucin de
Solu s y datos, herram 1.1. Introduccin a la problemas ha estado rodeada de
p etitiva
selectivas, re solucin de problemas: mitos y creencias que obstaculizan
el aprendizaje

C
aractersticas, pasos para resolverlos,

01
estrategia para mejorar la compresin
Solucin de Problemas
del enunciado de un problema y las va-
1.1. Introduccin a la solucin de problemas: 02 Introduccin a la programacin riables e identificacin de los datos de un pro-
Caractersticas, pasos para resolverlos, estrategia 2.1. Conceptos generales blema. Tipos de Problemas
para mejorar la compresin del enunciado de un 2.2. Algoritmos y diagramas de flujo De acuerdo con la naturaleza de la informa-
problema y las variables e identificacin de los 2.3. Conceptos fundamentales Con frecuencia la solucin de problemas ha es-
cin que se da o se proporciona, los problemas
datos de un problema 2.4. Construccin de Algoritmos y Diagramas tado rodeada de mitos y creencias que obstaculi-
se dividen en dos tipos: estructurados y no es-
de flujo. zan el aprendizaje, se atribuyen a los problemas
tructurados. En el primer tipo se proporciona la
1.2. Relacin entre variables y caractersticas: dificultades no justificadas que, ms bien, surgen
informacin necesaria y suficiente para encon-
Relaciones parte-todo, de orden, con inversiones, 03 Estructuras Selectivas de la falta de informacin acerca de lo que es
trar la solucin, y en el segundo la informacin
con inversiones de orden y familiares. 3.1. Si Entonces (If Then) un problema y de la variedad de estrategas que
es incompleta o ambigua y debe complementarse
3.2. Si Entonces Sino (If Then Else) pueden utilizarse para resolverlos.
con datos adicionales.
1.3. Problemas acerca de las relaciones entre dos 3.3. Si Anidado
variables: tablas numricas, lgicas y conceptuales. Un problema es un enunciado en el cual se
3.4. Si Multiple (Case) Etapas para resolver un problema
da cierta informacin y se plantea una pregun-
ta que debe ser respondida; en general se pide Para llegar a la solucin de un problema la
04 Estructuras Repetitivas
calcular o indagar uno o ms datos faltantes o persona debe, en primer lugar; leer cuidadosa-
4.1. Mientras que (While)
generar explicaciones acerca de ciertos hechos mente el enunciado, codificar toda la informa-
4.2. Repetir para (For)
o situaciones. cin dada e identificar la informacin relevante
4.3. Hacer mientras (Do while)
y las pistas que se dan. Este proceso contribu-
Todo problema involucra una discrepancia o ye a lograr una clara imagen o representacin
05 Estructuras de Datos (Arreglos)
diferencia entre dos situaciones, una observa- mental del problema y es bsica para alcanzar
5.1. Arreglos en una dimensin o Vectores
da o dada y otra deseada. Resolver el problema la segunda etapa durante el proceso de solucin
5.2. Arreglos multidimensionales
es encontrar la manera de reducir o eliminar la de un problema.
discrepancia.
06 Herramientas para la Simulacin
6.1. Pseudocodigo LPP

6.2. Diagramas de flujo DFD

4 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 5
o
ob le m as
So lu ci n de pr
ob le m as So lu ci n de pr
S
Una estrategia es un conjunto ordenado Estrategia para mejorar la comprensin
de pasos que permite lograr un objetivo. del enunciado de un problema:
s
componentes de un problema
Caractersticas de los problemas
a

a. Estado inicial: condicin de partida.


Un problema es un enunciado acerca de una Cuntos jvenes han recibido los
b. Estados intermedios: diferente etapas
m

situacin determina en el cual se dan datos o in- beneficios del plan de renovacin de
intermedia que deben completarse para la educacin del pas Colombia?
formacin y se plantea una pregunta acerca de
resolver el problema.
una discrepancia o un desequilibrio entre una si-
Problemas Estructurados y c. Estado final: condicin de llegada
tuacin observada o dada y una situacin desea-
e

Problemas no Estructurados determinada por lo que se pide en el


da. La respuesta a la pregunta proporciona los
enunciado del problema.
datos para reducir la discrepancia y constituye
l

d. Operaciones: diferentes acciones,


la solucin el problema. Problemas no estructurados actividades o procesos sugeridos en el Un problema es un enunciado en el cual se plantean
b

La informacin dada no es suficiente problema. datos iniciales y finales, se describen algunas


e. Condiciones: requerimientos o condiciones acciones realizadas, se establecen restricciones
Estructurados
o

Identificacin de las La informacin dada es la que se imponen en el enunciado (si existen) y se plantea una pregunta acerca de
caractersticas del necesaria y suficiente f. Pregunta: lo que se desea saber o se uno o ms datos faltantes. Resolver el problema
enunciado de un problema. es encontrar el o los datos faltantes.
r

cuestiona en el problema
n de p

Pasos para resolver un Problema:


Ejercicio introductorio Estrategia para resolver un problema. Componentes de un problema Estrategia general y especfica
1. Las grandes ciudades son urbes superpo-
1. Leer el problema en su totalidad e En este caso, dentro de la estrategia general
bladas con una enorme diversidad de activida-
identificar los datos y la pregunta. Datos Iniciales Estado inicial utilizamos adems dos estrategias particulares
des comerciales y productivas, generalmente con
2. Leer el problema parte por parte y o especficas:
grandes problemas de contaminacin. Cules
representar los datos en un diagrama. Datos finales Estado final
son las principales causas de la contaminacin
3. Interpretar el diagrama y extraer La identificacin de los elementos del problema
ambiental de las grandes ciudades?
conclusiones. Productos intermedios Estados
intermedios La elaboracin del diagrama
2. Cuntos jvenes han recibido los benefi- 4. Relacionar las conclusiones con la pregunta
cios del plan de renovacin de la educacin del del problema
Actividades que se describen Acciones u La identificacin de los elementos del problema
oluci

pas Colombia? 5. Realizar los clculos que sean requeridos


operaciones y la elaboracin del diagrama tambin tienen
6. Verificar resultado
sus particulares. Una estrategia es un conjunto
3. La proteccin de la salud de la poblacin es
Lo que se debe respetar Restricciones ordenado de pasos que permite lograr un objetivo.
uno de los beneficios ms importantes que una
comunidad puede recibir. Se precisa saber hasta
qu punto este beneficio lo estn recibiendo los Lo que se desea saber Pregunta del
habitantes de la regin del Catatumbo. problema

6 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 7
ob le m as
So lu ci n de pr
ob le m as So lu ci n de pr

Las variables y la identificacin Concepto de variable Problemas acerca de las Problemas acerca de las
de los datos de un problema relaciones parte-todo: relaciones familiares:
El concepto de variable lo hemos utilizado en
Los datos de un problema, cualquiera que ste temas anteriores con otro nombre, el de aspecto. En este tipo de problema unimos un En este tipo de ejercicios se presenta un tipo
sea, se expresan en trminos de variables, de los Siempre dijimos que edad, color, tamao, canti- conjunto de partes conocidas para formar particular de relacin referido a los nexos de pa-
valores de stas o de caractersticas de los obje- dad de dinero, lugar, etc., eran aspectos; ahora diferentes cantidades y generar ciertos rentesco entre los diferentes componentes de la
tos o situaciones involucradas en el enunciado. estamos dndole al aspecto un nuevo nombre, desequilibrios entre las partes. Son problemas familia. Los tipos de relaciones o nexos que se
Podemos afirmar que los datos siempre provie- el de variable, y estamos aprendiendo algo ms donde se relacionan partes para formar una presentan entre los miembros de una familia pue-
nen de variables. Vale recordar que una varia- sobre stas. Una variable es una magnitud que totalidad deseada, por eso se denominan den ser: Relaciones padre-hijo, entre hermanos,
ble es una magnitud que puede tomar valores puede tomar valores cualitativos o cuantitativos. problemas sobre relaciones parte-todo. to sobrino, entre primos, entre esposos y sus
cualitativos o cuantitativos. familiares, suegros, yernos, cuados, etc.
Problemas respecto a
1.2. Relacin entre relaciones de orden:
Para distinguir estos conceptos consideremos 1.3. Problemas acerca de
el siguiente ejemplo. Si hablamos del peso del variables y caractersticas: La estrategia a utilizar se denomina represen- las relaciones entre dos
cuerpo, nos referimos a una variable; si deci- Relaciones parte-todo, de tacin lineal y permite visualizar el enunciado variables: tablas numricas,
mos que Mara pesa 60 kg, nos referimos a una orden, con inversiones, de los problemas y en la mayora de los casos, lgicas y conceptuales.
caracterstica de Mara; y si decimos que la va- con inversiones de lograr la solucin. La estrategia que permite re-
En este tipo de problemas se plantean relacio-
riable peso puede tomar los valores desde cero orden y familiares. presentar datos correspondientes a una sola va-
nes simultaneas entre dos variables y se pide una
hasta infinito, estamos hablando de valores de riable o aspecto se denomina representacin en
Una relacin es un nexo entre dos o ms carac- respuesta que corresponde a una tercera variable
la variable. una dimensin.
tersticas correspondientes a la misma variable. que resulta de las relaciones previamente men-
En el enunciado del problema se dan los valores cionadas. En este tipo de problemas la estrategia
Por lo que cabe mencionar que la compren- Problemas acerca de las relaciones
de las variables que correspondan y se presentan ms apropiada para obtener las soluciones es la
sin del enunciado de un problema est ntima- con inversiones de orden:
los nexos entre stas; del anlisis de estos nexos construccin de tablas.
mente relacionada con la identificacin clara y
surge el tipo de relacin, y de ste la estrategia En este caso se requiere aplicar una estrategia
precisa de las variables que se consideran en el
particular de representacin que se va a utilizar adicional, llamada postergacin, que consiste en La estrategia particular que se utiliza en este
enunciado.
para comprender el problema, lograr la imagen dejar para ms tarde aquellos datos que parez- caso es la representacin mediante tablas, que
mental y, en muchos casos, obtener la solucin. can incompletos, hasta que se presente el dato son reticulados que tienen filas y columnas, las
que complete la informacin. cuales determinan celdas. En las filas y las co-
Las variables, sus valores y sus relaciones con- lumnas se representan los tipos de variables con-
forman los datos de los problemas. Un dato puede Problemas acerca de las relaciones sideradas y en las celdas se insertan los nmeros
ser una variable, un valor de una variable o una con inversiones de orden: o valores de las diferentes pares de variables.
relacin entre dos variables o entre sus valores.
Ejercicios con enunciados confusos, en este
De las tres variables que se dan, dos son cua-
tipo de casos es necesario prestar atencin espe-
litativas y permiten construir la tabla, y la ter-
cial a la variable, a los signos de puntuacin y al
cera puede ser cualitativa, cuantitativa o lgica,
uso de ciertas palabras presentes en el enunciado.
segn el tipo de respuesta que se pide encontrar
y los datos dados en el problema. Esta tercera
variable siempre est incluida en la pregunta del
problema y se utiliza para llenar las celdas o los
cuadros de la tabla.
8 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 9
n
la pr og ra m ac i
So lu ci n de pr
ob le m as In tro du cc i n a

0 2 Introduccin a la programacin
El nmero cero (0) se asocia con el concepto
de nada, de nulo o de ausencia de algo.
2.1. Conceptos generales Qu es un programa?
Antes de iniciar el tema, es conveniente, sobre Conjunto de instrucciones que hacen funcionar
Tres tipos de problemas se refieren a estas Los problemas acerca de las tablas numricas
todo para aquellos que comienzan su instruccin a la computadora.
relaciones entre variables: relaciones numricas, con ceros.
informtica, hacer un breve repaso de conceptos
relaciones lgicas entre dos o ms variables y El nmero cero (0) se asocia con el concepto Organizacin fsica de la computadora
fundamentales que se han de tomar en cuenta
relaciones entre conceptos. El primer tipo de de nada, de nulo o de ausencia de algo. Por
cuando se desarrollan programas que se utilizarn
problema se resuelve mediante la construccin esa razn es muy comn confundir la falta de
en computadoras.
de tablas numricas; el segundo tipo de problema informacin acerca de algo con el hecho establecido
se apoya en las tablas lgicas y el tercer tipo se de que no hay informacin respecto a ese algo.
Se incluye la metodologa que se requiere para
trabaja con tablas semnticas o conceptuales. En
disear algoritmos de manera sencilla y funcional.
la primeras se registran en las celdas cantidades Problemas acerca de tablas lgicas.
o nmeros, en las segundas, relaciones lgicas En este tipo de problemas la variable trabaja
Qu es una computadora?
y en las terceras, conceptos. con un tipo distinto de valor y se llama variable
lgica, que slo puede tomar como valor los Es un dispositivo electrnico utilizado para
Las tablas son instrumentos muy tiles para calificativos verdadero o falso, o si o no. procesar informacin y obtener resultados. Dispositivos de Entrada/Salida
resolver problemas pues permiten organizar la Por su naturaleza, una tabla lgica tiene ciertas
Los datos y la informacin se pueden introducir Los dispositivos de Entrada/Salida permiten la
informacin y visualizar el problemas; adems, propiedades que resultan muy tiles al construirlas.
en la computadora por la entrada y a continuacin comunicacin entre la computadora y el usuario
constituyen una especie de memoria externa Una vez completada, una tabla lgica representa
se procesan para producir una salida (resultados). para introducir datos (informacin) para su proceso.
que nos ayuda a mantener el record de algunos lo que es cierto y lo que no es, en forma directa
Los datos se leen de los dispositivos de entrada y
elementos de informacin que a veces deben y clara. En muchos casos (pero no siempre) las
Los datos de entrada y los datos de salida pueden se almacenan en la memoria principal, convierten
postergarse para relacionarse con datos que se posibilidades que representa son mutuamente
ser, realmente, cualquier cosa, texto, dibujos, o la informacin de entrada en seales elctricas
dan posteriormente o que se infieren durante el excluyentes.
sonidos. que se almacenan en la memoria principal.
proceso de resolucin de problemas.
Problemas acerca de tablas conceptuales.
Qu es el software? Tipos de dispositivos de entrada:
Caractersticas de los problemas Otra manera de establecer relaciones entre
Teclados.
de tablas numricas. variables y caractersticas es a travs de nexos Conjunto de programas escritos para una
entres los conceptos; en este caso se habla de computadora. Lpices pticos.
Este tipo de problemas se refieren a relaciones
relaciones semnticas. Las relaciones de este tipo Palancas de mando (joystick).
entre dos variables (las dos cualitativas) y se
resuelve mediante la estrategia de representacin
de problema con las variables y caractersticas es Qu es el hardware?
Lectores de cdigos de barra.
indirecta, por medio de las caractersticas esenciales
tabular llamada tabla numrica. La estrategia se Componentes fsicos que constituyen la computadora,
de las clases que definen los conceptos y de sus Micrfonos.
llama as porque la tercera variable siempre toma junto con los dispositivos que realizan las tareas
respectivas variables.
valores numricos y estos valores son los que de entrada y salida Mouse
sirven para completar la tabla. Cmaras de video, etc

10 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 11
n
la pr og ra m ac i
la pr og ra m ac i
n In tro du cc i n a
In tro du cc i n a

Los dispositivos de salida permiten


representar resultados (salida) Tipos de Lenguajes Para que un procesador realice un proceso
del proceso de los datos. se le debe suministrar en primer lugar un
Los dispositivos son algoritmo adecuado
Para que un procesador realice un proceso
Pantalla. herramientas que ayudan se le debe suministrar en primer lugar un
Impresoras. expresar una idea, algoritmo adecuado. El procesador debe ser
Trazadores grficos (plotters). capaz de interpretar el algoritmo, lo que
mensaje o concepto
Reconocedores de voz, etc. significa: Comprender las instrucciones programadores son los escritores y
de cada paso, Realizar las operaciones diseadores de programas.
Memoria principal correspondientes. Los principales tipos de lenguajes utilizados
Unidad aritmtica Lgica (ALU).- realiza operaciones
Cuando el procesador es una computadora, en la actualidad son: Lenguajes mquina,
Conocida como RAM (Random Access Memory), aritmticas y lgicas, tales como sumas, restas,
el algoritmo se ha de expresar en un Lenguajes de bajo nivel (ensamblador),
almacena informacin (instrucciones de un programa multiplicaciones divisiones y comparaciones.
formato que se denomina programa. Lenguajes de alto nivel.
y los datos con los que operan las instrucciones) de Los datos se pueden leer (recuperar) o escribir
Un programa se escribe en un lenguaje programadores son los escritores y
manera transitoria, es decir, durante la ejecucin (cambiar) por la upc.Memoria auxiliar (externa)
de programacin y las operaciones que diseadores de programas.
de un programa.
Cuando un programa se ejecuta, se debe conducen a expresar un algoritmo en forma Los principales tipos de lenguajes utilizados
Unidad Central de Proceso (UPC) situar primero en la memoria principal de de programa se llama programacin. en la actualidad son: Lenguajes mquina,
igual modo que los datos, sin embargo, la As pues, los lenguajes utilizados para Lenguajes de bajo nivel (ensamblador),
Dirige y controla el proceso de informacin escribir programas de computadoras
informacin almacenada en la memoria Lenguajes de alto nivel.
realizado por la computadora, esta conformada por: son los lenguajes de programacin y
se pierde (borra) cuando se apaga la
computadora y, por otra parte, la memoria programadores son los escritores y
Unidad de control (UC).- coordina las actividades diseadores de programas. Lenguajes mquina
principal es limitada en capacidad.
de la computadora y determina que operaciones se Los principales tipos de lenguajes
Por esta razn, para poder disponer de Son aquellos que estn escritos en lenguajes
deben realizar y en que orden; as mismo controla utilizados en la actualidad son:
almacenamiento permanente, tanto para directamente inteligibles por la mquina
y sincroniza todo el proceso de la computadora. Lenguajes mquina.
programas como para datos se necesitan (computadora), ya que sus instrucciones
dispositivos de almacenamiento secundario, Lenguajes de bajo nivel (ensamblador) son cadenas binarias (cadenas o series
auxiliar o masivo. Lenguajes de alto nivel. de dgitos 0s y 1s) que especifican una
Los dispositivos de almacenamiento programadores son los escritores y operacin.
secundario o memorias auxiliares (externas diseadores de programas. Las posiciones (direccin) de memoria
o secundarias) ms comnmente utilizadas Los principales tipos de lenguajes implicadas en la operacin se denominan
son CD-ROM, DVD, cintas y discos utilizados en la actualidad son: instrucciones de mquina o cdigo mquina

C++
magnticos, USB, etc. Lenguajes mquina. (cdigo binario).
Lenguajes de bajo nivel (ensamblador) Las instrucciones en lenguaje mquina
Lenguajes de alto nivel. dependen del hardware de la computadora y,
por lo tanto, diferirn de una computadora
a otra.

12 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 13
n
la pr og ra m ac i
la pr og ra m ac i
n In tro du cc i n a
In tro du cc i n a

Lenguajes de bajo nivel Lenguajes de alto nivel 2.2. Algoritmos y


diagramas de flujo
Son ms fciles de utilizar que los lenguajes Son los ms utilizados por los programadores,
mquina, pero, al igual, que ellos, dependen de estn diseados para que las personas escriban El pseudocdigo describe un algoritmo utilizando
la mquina en particular. y entiendan los programas de un modo ms f- Concepto de algoritmo una mezcla de frases en lenguaje comn, instrucciones
El lenguaje de bajo nivel por excelencia es el cil que los lenguajes mquina y ensambladores. Los seres humanos realizamos una serie de pa- de programacin y palabras clave que definen las
ensamblador. Un programa escrito en lenguaje de alto nivel sos, procedimientos o acciones que nos permi- estructuras bsicas.
Las instrucciones en lenguaje ensamblador son es independiente de la mquina; esto es, las ins- ten alcanzar un resultado o resolver un proble-
instrucciones conocidas como nemotcnicos. Por trucciones del programa de la computadora no ma, esto se repite innumerables veces durante el El objetivo del pseudocdigo es permitir que
ejemplo, tpicos de operaciones aritmticas: ADD, dependen del diseo del hardware o de una com- da. En realidad estamos aplicando un algoritmo el programador se centre en los aspectos lgicos
SUB, DIV. putadora en particular. para resolver un problema. de la solucin, evitando las reglas de sintaxis de
Un programa escrito en lenguaje ensamblador Los programas escritos en lenguaje de alto ni- los lenguajes de programacin.
no puede ser ejecutado directamente por la com- vel son portables o transportables, lo que signi- Definicin de Algoritmo.- secuencia ordenada
putadora, en esto se diferencia esencialmente del fica la posibilidad de poder ser ejecutados con y cronolgica de pasos que llevan a la solucin No siendo el pseudocdigo un lenguaje formal,
lenguaje mquina, sino que requiere una fase de poca o ninguna modificacin en diferentes tipos de un problema o a la ejecucin de una tarea (o los pseudocdigos varan de un programador a
traduccin al lenguaje mquina. de computadoras. actividad). otro, es decir, no hay un pseudocdigo estndar.
El programa original escrito en lenguaje ensam- Los programas fuente en lenguaje de alto nivel
blador se denomina programa fuente y el pro- tiene que ser traducidos por los programas tra-
Diagramas de flujo
grama traducido en lenguaje mquina se conoce ductores, llamados en este caso compiladores. El algoritmo debe tener las siguientes
como programa objeto, ya directamente inteli- caractersticas: Un diagrama de flujo representa la esquematizacin
gible por la computadora. Tipos de lenguajes de alto nivel: grfica de un algoritmo.
El traductor de programas fuente a objeto es un Tener un principio
C, C++, Fortran, C#, VisualBasic, Java
programa llamado ensamblador. Ser simples, claros, precisos, exactos. En realidad muestra grficamente los pasos o
Tener un orden lgico. procesos a seguir para alcanzar la solucin de
Muy extendidos:
Debe ser finito. un problema.
Modula-2, Prolog, LISP, Smaltalk
Tener un fin.
Su correcta construccin es sumamente importante
Gran uso en el mundo profesional:
La definicin de un algoritmo debe describir porque, a partir del mismo se escribe un programa
Borland Delphi, C++ Builder, Power Builder
tres partes: en algn lenguaje de programacin.

Aunque hoy en da el mundo de Internet consume


Entrada. Si el diagrama de flujo est completo y correcto,
gran cantidad de recursos en forma de lenguajes
Proceso. el paso del mismo a un lenguaje de programacin
de programacin como:
Salida es relativamente simple y directo.
HTML, XML, JavaScript, etc.

La serie de pasos, procedimientos o acciones que A continuacin, presentamos los smbolos que
nos permiten alcanzar un resultado o resolver un utilizaremos y una explicacin de los mismos.
problema a travs de algoritmos, los desarrollamos Estos satisfacen las recomendaciones de la ISO
por medio de pseudocdigo. y la ANSI.

14 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 15
n
la pr og ra m ac i
la pr og ra m ac i
n In tro du cc i n a
In tro du cc i n a

Smbolo utilizado para representar una decisin mltiple. En su Tipos de datos


interior se almacena un selector y dependiendo del valor de dicho
* Los datos a procesar por una computa-
selector se sigue por una de las ramas o caminos alternativos.
dora pueden clasificarse en:

Smbolos utilizados para expresar la direccin Simples


del flujo del diagrama Smbolo utilizado para representar una decisin. En su interior Estructurados
se almacena una condicin y dependiendo del resultado de la
evaluacin de la misma se sigue por una de las ramas o cami- * Los datos simples se caracterizan por-
nos alternativos: verdadero o falso. que ocupan slo una casilla de memoria,
por lo tanto una variable simple hace re-
ferencia a un nico valor a la vez. den-
tro de este grupo de datos encontramos:
Datos simples
Smbolo utilizado para introducir los datos de Enteros Enteros
entrada. Expresa lectura. Reales (flotantes)
Son nmeros que no contienen compo- Caracteres
nentes fraccionarias y por lo tanto, no Cadena de caracteres
Smbolo utilizado para representar la impresin
incluyen el punto decimal, pueden estar Booleanos
de un resultado. Expresa escritura.
precedidos del signo + o --. Por ejemplo:
* Los datos estructurados se caracteri-
465 -387 9 99 -1578 125550 zan por el hecho de que con un nombre
se hace referencia a un grupo de casillas
Reales (flotantes) de memoria.
Smbolo utilizado para expresar conexin den-
tro de una misma pgina. Son nmeros que contienen una parte frac-
* Es decir, un dato estructurado tiene
cionaria y por lo tanto, incluyen el punto
varios componentes. Cada uno de sus
Smbolo utilizado para expresar conexin en- decimal, pueden esta precedidos del sig-
componentes puede ser a su vez un dato
tre pginas diferentes. no + o --. Por ejemplo:
simple. Dentro de este grupo de datos se
encuentran:
125.87 -124.0 158000.75 -38.5879

Arreglos
Carcter
Cadena de caracteres
Smbolo utilizado para representar un proceso. Contiene un solo carcter y va encerra- Registros
En su interior se expresan asignaciones, opera- do entre comillas simples. Por ejemplo:
ciones aritmticas, cambios de valor de celdas Smbolo utilizado para marcar el inicio y el fin
en memoria, etc. del diagrama flujo. a A $ # 7 + h
H

16 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 17
n
la pr og ra m ac i
la pr og ra m ac i
n In tro du cc i n a
In tro du cc i n a

Cadena de caracteres. Constantes


Contiene un conjunto de caracteres alfabticos, Son datos que no cambian durante la ejecucin de Operadores Aritmticos
numricos, y especiales, que sirven para representar un programa. Existen tipos de constantes como
y manejar datos como: nombres, descripciones de tipos de datos, por lo tanto, puede haber constantes Operador Operacin Ejemplo Resultado
Aritmtico
artculos, direcciones, etc. Van encerrados entre enteras, reales (flotantes), de carcter, de cadenas
comillas dobles, por ejemplo: abc Carlos de caracteres, booleanas, etc. ** Potencia 3**2 9
Jimnez 83-15-24-65 $8#2
Variables * Multiplicacin 5.25*3 15.75
Booleanos
1. Es un identificador que puede cambiar / Divisin 17/4 4 .25
Toma los valores de verdadero (true) o falso (false), su valor durante la ejecucin de un
no puede ser ledo o escrito, slo asignado, es programa. + Suma 58+79 1 37
til para plantear cierto tipo de condiciones en 2. Se utiliza para representar un dato tipo
- Resta 2 5.96 -11.25 1 4.71
el manejo de las estructuras lgicas de control. entero, real (flotante), o una constante de
carcter. Por ejemplo: Mod Mdulo (residuo) 2 1 mod 2 1
Identificadores, constantes y
variables Identificadores. Variable i es de tipo entero, div Divisin entera 1 9/3 6
variable prom es de tipo real (flotante),
Son nombres que se usamos para referirnos a
Variable opcin es de tipo carcter.
variables, constantes, funciones o cualquier objeto
definido por el usuario. Un identificador se forma Al evaluar expresiones que contienen operadores aritmticos debemos respetar la jerarqua en el
de acuerdo a ciertas reglas bsicas: Operaciones aritmticas orden de aplicacin. Es decir, si tenemos en una expresin ms de un operador, debemos aplicar
primero el operador de mayor jerarqua, resolver esa operacin y as sucesivamente.
Para poder realizar operaciones aritmticas
El primer carcter que forma un
necesitamos de operadores aritmticos.
identificador debe ser una letra o el smbolo
de subrayado ( _ ). Jerarqua de los operadores aritm cos
Estos operadores nos permiten realizar operaciones
aritmticas entre operandos: nmeros, constantes o Operador Jerarqua Operacin
Los dems caracteres pueden ser letras,
variables. El resultado de una operacin aritmtica
dgitos o smbolo de subrayado. ** (Mayor) Potencia
es un nmero.
*, /, mod, div Mul plicacin, divisin, mdulo, divisin entera
La longitud del identificador depende del
lenguaje de programacin a utilizar. +, - (menor) Suma, resta

A continuacin presentamos
en una tabla los operadores
aritmticos, la operacin que
puede realizar y, un ejemplo
de su uso y su resultado:

18 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 19
n
la pr og ra m ac i
la pr og ra m ac i
n In tro du cc i n a
In tro du cc i n a

Operadores relacionales Expresiones lgicas


Son operadores que permiten comparar dos Las expresiones lgicas o booleanas, estn cons-
Reglas para resolver una expresin aritmtica: operandos, los operandos pueden ser nmeros, tituidas por nmeros, constantes o variables y
caracteres, constantes o variables. operadores lgicos o relacionales. El valor que
1.Si una expresin contiene subexpresiones entre parntesis, stas se evalan primero, respetando pueden tomar estas expresiones es de verdade-
claro la jerarqua de los operadores aritmticos en esta subexpresin. Las constantes o variables, a su vez, pueden ro o falso.
Si las subexpresiones se encuentran anidadas por parntesis, primero se evalan las subexpresiones ser de tipo entero, real (flotante), carcter o ca-
que se encuentran en el ltimo nivel de anidamiento. dena de caracteres. Se utilizan con frecuencia en las estructuras
selectivas y en las estructuras repetitivas.
2. Los operadores aritmticos se aplican teniendo en cuenta la jerarqua y de izquierda a derecha. El resultado de una expresin con operadores
relacionales es verdadero o falso.

Por ejemplo:
Dados los siguientes casos, resolver cada caso aplicando las reglas correspondientes: Operadores Relacionales
1). 7 + 5 6 2). 9 +7 * 8 36 / 5 3). 7 * 5 ** 3 / 4 div 3
1 1 1 Operador Operacin Ejemplo Resultado
12 6 9 + 56 36 / 5 7 * 125 / 4 div 3 == Igual que lalo == lola Falso
2 2 2 <> Diferente a x < > y Verdadero
=6 9 + 56 7.2 875 / 4 div 3
< Menor que 14 < 25 Verdadero
3 3
65 7.2 218.75 div 3 > Mayor que 35 > 10 Verdadero
4 4 <= Menor o igual que 5 <= 6 Verdadero
= 57.8 = 72 >= Mayor o igual que 15 >= 7 Verdadero
4). 7 * 8 * (160 mod 3 ** 3) div 5 * 13 28 3640 - 28
1 7
7 * 8 * (160 mod 27) div 5 * 13 28 = 3612
2
7 * 8 * 25 div 5 * 13 28 Operadores lgicos
3
56 * 25 div 5 * 13 28 Son operadores que permiten formular Disyuncin (o)
4 condiciones complejas a partir de Relaciona dos operandos booleanos. Proporciona
1400 div 5 * 13 28 condiciones simples. un valor verdadero (V), si uno de los dos es ver-
5 Los operadores lgicos son de: dadero; e caso contrario da un resultado falso (F).
280 * 13 28
6
Conjuncin (y) Negacin (No)
- Relaciona dos operandos booleanos. Proporcio- Este operador relaciona slo un operando boo-
na un valor verdadero (V), si los dos son verda- leano y da como resultado un valor opuesto al
deros; en caso que tenga el operando.
contrario da un resultado falso (F).

20 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 21
n
la pr og ra m ac i
la pr og ra m ac i
n In tro du cc i n a
In tro du cc i n a

Por ejemplo:
Dados los siguientes casos, resolver cada caso aplicando las reglas correspondientes: 2.4. Construccin de Algoritmos
y Diagramas de flujo
1). A = 5, B = 16 2). X = 6, B = 7.8
(A ** 2) > (B * 2) (X * 5 + B ** 3 / 4) < = (X ** 3 div B) Estructura y diseo de un algoritmo
1 1
25 > (B * 2) (X * 5 + 474.552 / 4) < = (X ** 3 div B) Existe una gran cantidad de problemas que
2 2 requieren de un anlisis profundo y de un
25 > 32 (30 + 474.552 / 4) < = (X ** 3 div B) pensamiento flexible y estructurado para la
3 3 solucin.
(30 + 118.638) < = (X ** 3 div B) La idea es ofrecer un conjunto de tcnicas
Falso 4 y herramientas metodolgicas que permitan
Continua flexibilizar y estructurar el razonamiento
Continuacin 2) utilizado en la solucin de problemas, esto
provocar finalmente la construccin de
148.638 < = (X ** 3 div B)
algoritmos eficientes.
5
A continuacin en la figura podemos Nota.- Por verificacin del algoritmo entendemos el
148.638 < = (216 div B) seguimiento del mismo con datos que sean representati-
observar las etapas que debemos seguir
6 vos del problema que queremos resolver.
para la solucin de un problema.
148.638 < = 27
Falso
3). ~(15 > = 7 ** 2) o (43 8 * 2 div 4 < > 3 * 2 div 2)
1 1. La secuenciacin es una estructura de a. Encabezado: Todo algoritmo debe tener un encabezado
~(15 > = 49) o (43 8 * 2 div 4 < > 3 * 2 div 2) control que permite a la computadora como identificacin, el cual debe empezar con la palabra
2 3 Continua ejecutar una accin, despus otra, luego Algoritmo seguida por una descripcin del problema a
la que sigue y as sucesivamente hasta la resolver.
Continua 3). ltima. b. Inicio: Todo algoritmo debe empezar con la etiqueta 1, que
2. Dichas acciones pueden consistir en marca el inicio del mismo.
~ Falso o (43 16 div 4 < > 3 * 2 div 2) Verdadero o Verdadero operaciones primitivas elementales c. Declaraciones: Despus de marcar el inicio se debe hacer las
4 10 como declaraciones de variables, leer declaraciones que se necesiten como Variables, constantes,
~ Falso o (43 4 < > 3 * 2 div 2) Verdadero datos, imprimir datos o calcular alguna tipos de datos, etc.
5 expresin. d. Leer, calcular e imprimir: Los siguientes pasos pueden
~ Falso o (43 4 < > 6 div 2) 3. Es conveniente etiquetar cada accin con consistir en acciones tales como: leer datos, calcular algunas
6 nmeros desde el uno en forma ascendente expresiones aritmticas e imprimir datos tantas veces
~ Falso o (43 4 < > 3) de uno en uno, para denotar el orden como se requiera y en el orden apropiado para resolver el
7 secuencial. problema en cuestin.
~ Falso o (39 < > 3) 4. Por lo tanto los elementos bsicos que e. 5in del algoritmo: El ltimo paso del algoritmo consiste en
8 integran la estructura de un algoritmo incluir la indicacin fin.
~ Falso o Verdadero son:
9

22 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 23
n
la pr og ra m ac i
la pr og ra m ac i
n In tro du cc i n a
In tro du cc i n a

Reglas para la construccin Reglas


de diagramas de flujo
Ejemplo No 1.- De algoritmos secuenciales Ejemplo No 3 Todo diagrama de flujo debe tener un inicio
Debemos recordar que un diagrama de y un fin.
Calcular e imprimir el sueldo de un empleado, Desarrollar un algoritmo para calcular el promedio flujo debe ilustrar grficamente los pasos o Las lneas utilizadas para indicar la
se pedir la clave del empleado, las horas traba- de un estudiante, se pedir la matricula del estu- procesos a seguir para alcanzar la solucin direccin del flujo del diagrama deben ser
jadas y el pago por hora trabajada. diante y cuatro calificaciones de los exmenes. Se de un problema. rectas, verticales y horizontales.
imprimir la matricula del estudiante y el promedio. Los smbolos colocados adecuadamente, Todas las lneas utilizadas para indicar la
Algoritmo Calcular el sueldo de un empleado permiten crear una estructura grfica direccin del flujo del diagrama deben
1. Inicio 5. Imprimir cve, sueldo Algoritmo calcular promedio de un estudiante flexible que ilustra los pasos a seguir para estar conectadas. La conexin puede ser a
2. Declaracin de variables: 6. Fin 1. Inicio alcanzar un resultado especfico. un smbolo que exprese lectura, proceso,
cve, ht: entero 2. Declaracin de variables El diagrama de flujo facilitar ms tarde la decisin, impresin, conexin o fin de
pht, sueldo: real (flotante) matest: entero escritura del programa en algn lenguaje de diagrama.
3. Leer cve, ht, pht cal1, cal2, cal3, cal4, calfin: real (flotante) programacin. El diagrama de flujo debe ser construido
4. sueldo = ht * pht 3. Leer matest, cal1, cal2, cal3, cal4 de arriba hacia abajo (top-down) y de
4. calfin = (cal1 + cal2 + cal3 + cal4) / 4 izquierda a derecha (right to left).
5. Imprimir matest, calfin La notacin utilizada en el diagrama de
6. Fin flujo debe ser independiente del lenguaje
de programacin.
Ejemplo No 2 Diagrama de flujo del algoritmo, ejemplo 1 Es conveniente cuando realizamos una tarea
compleja poner comentarios que expresen
Desarrollar un algoritmo que permita leer un nmero en radianes o ayuden a entender lo que hicimos.
e imprima su equivalencia en grados; as mismo, leer un nmero Si el diagrama de flujo requiere ms de una
en grados e imprima su equivalencia en radianes. hoja para su construccin, debemos utilizar
Algoritmo Convierte radianes a grados y grados a radianes los conectores adecuados y enumerar las
1. Inicio pginas convenientemente.
2. Declaracin de variables: No puede llegar ms de una lnea a un
PI = 3.145926536: real (flotante) smbolo.
rad, grad, numrad, numgrad: real (flotante)
3. Leer rad, grad
4. numgrad = rad * (180 / PI)
5. numrad = grad * (PI / 180)
6. Imprimir numgrad, numrad
7. Fin

24 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 25
le ct iv as
la pr og ra m ac i
n Es tru ct ur as se
In tro du cc i n a

03 Estructuras Selectivas
Diagrama de flujo del algoritmo, ejemplo 2

3.1. Si Entonces (If Then)

Seleccin si-entonces Funcionamiento:


La estructura selectiva lgica si entonces Al llegar al si se evala la condicin (es):
permite que el flujo siga por un camino a. Si se cumple, se ejecuta (n) la (s) operacin
especfico si se cumple una condicin o un (es) del entonces y luego salta hasta
conjunto de condiciones. el siguiente paso despus del fin del
Si al evaluar la condicin (o condiciones) el condicional.
resultado es verdadero, entonces se ejecuta b. Si no se cumple, salta hasta despus del fin
(n) cierta (s) operacin (es), luego continua del condicional, es decir no hace nada.
con la secuencia normal del proceso.
Se utiliza cuando alguna operacin est
condicionada para que se lleve a cabo, pero
no tiene una opcin alterna. Diagrama de flujo
Diagrama de flujo del algoritmo, ejemplo 3

Formato:
si condicin entonces
operacin (es)
{ Fin del condicional }

Donde:
si.- identifica la estructura selectiva
condicin.- expresa la condicin o
conjunto de condiciones a evaluar
entonces.- indica el curso de accin a
seguir si se cumple la condicin.
operacin.- expresa la operacin o
conjunto de operaciones.
fin del condicional.- indica el fin de la
estructura de seleccin (si)

26 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 27
le ct iv as
Es tru ct ur as se
le ct iv as Es tru ct ur as se

Ejemplo 1: Dado como dato una calificacin 3.2. Si Entonces Sino


Diagrama de flujo
de un alumno en un examen, desarrollar un algo- (If Then Else)
ritmo y diagrama de flujo, que imprima el men-
saje de aprobado en caso de que la calificacin
sea mayor o igual a 70. Seleccin si entonces/sino Formato:
La estructura selectiva si entonces/sino si condicin
Algoritmo Alumno aprobado permite que el flujo se bifurque por dos entonces
1. Inicio ramas diferentes en el punto de la toma de hacer operacin 1
2. Declaracin de variables decisin (es). sino
cal: flotante Si al evaluar la condicin (o condiciones) hacer operacin 2
3. Leer cal el resultado es verdadero, entonces sigue { Fin del condicional }
4. si cal >=70 entonces por un camino especfico y se ejecuta (n)
imprimir Aprobado cierta (as) operacin (es). Por otra parte, Donde:
5. Fin del condicional paso 4 si el resultado es falso entonces se sigue
6. Fin si.- identifica la estructura selectiva
por otro camino y se ejecuta (n) otra (s)
condicin.- expresa la condicin o
operacin (es).
conjunto de condiciones a evaluar
En ambos casos, luego de ejecutarse la (s)
entonces.- indica el curso de accin a
operacin (es) indicada (s), se contina con
seguir si se cumple la condicin.
la secuencia normal del proceso.
Ejemplo 2: Dado como dato el sueldo de un operacin 1.- expresa la operacin o
Por la naturaleza de stas, se debe ejecutar
trabajador, desarrollar un algoritmo y diagrama conjunto de operaciones.
una o la otra, pero no ambas a la vez, es
de flujo, que aplique un aumento del 15% si su operacin 2.- expresa la operacin o
decir, son mutuamente excluyentes.
sueldo es inferior a $1000. se imprimir el nue- conjunto de operaciones.
vo sueldo del trabajador. fin del condicional.- indica el fin de la
Diagrama de flujo estructura de seleccin (si)
Algoritmo Aumento de sueldo de un trabajador
1. Inicio Funcionamiento:
2. Declaracin de variables:
Al llegar al si se evala la condicin (es):
sue, aum, nsue: flotante
3. Leer sue
Opcin verdadera (entonces) si se cumple, se ejecuta (n)
4. si sue < 1000 entonces
la (s) operacin (es) del entonces y luego salta hasta el
aum = sue * 0.15
siguiente paso despus del fin del condicional.
nsue = sue + aum
Opcin falsa (sino) De lo contrario, salta hacia el sino, ejecuta
imprimir nsue
la (s) operacin (es), y despus salta hasta el siguiente paso
5. Fin del condicional paso 4
despus del fin del condicional.
6. Fin

28 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 29
le ct iv as
Es tru ct ur as se
le ct iv as Es tru ct ur as se

Diagrama de flujo

Diagrama de flujo Estructuras selectivas anidadas:


Encontramos numerosos casos en el
desarrollo de la solucin de problemas en el
que luego de tomar una decisin y marcar
Diagrama de flujo el camino correspondiente a seguir, es
necesario tomar otra decisin.. Se seala,
luego de evaluar las condiciones , la rama
correspondiente a seguir, y nuevamente
podemos tener que tomar otra decisin.
El proceso puede repetirse numerosas
veces. En este caso, para resolver el
problema, estamos aplicando estructuras
Ejemplo 1: Dado como dato una calificacin selectivas en cascada o anidadas.
de un alumno en un examen, desarrollar un algo- A continuacin presentamos diferentes
ritmo y diagrama de flujo, que imprima el mensa- casos de anidamiento para la estructura
je de aprobado en caso de que la calificacin sea selectiva si:
mayor o igual a 70 o reprobado en caso contrario.
n si condicin1 entonces
Algoritmo n1 si condicin2
Ejemplo 2: Dado como dato el sueldo de un
1. Inicio entonces
trabajador, desarrollar un algoritmo y diagrama
2. Declaracin de variables hacer operacin21
de flujo, que aplique un aumento del 15% si su
cal: flotante sino
sueldo es inferior a $1000 y 12% en caso contra-
3. Leer cal hacer operacin22
rio. Se imprimir el nuevo sueldo del trabajador.
4. si cal >=70 entonces n2 fin del condicional del paso n1
imprimir Aprobado n + 1 fin del condicional del paso n
Algoritmo
sino 1. Inicio
imprimir Reprobado 2. Declaracin de variables:
4. Fin del condicional paso 4 sue, nsue: flotante Caso 1
5. Fin 3. Leer sue
4. si sue < 1000 entonces
nsue = sue * 1.15
sino
nsue = sue *1,12
5. Fin del condicional paso 4
Caso 2
6. Imprimir nsue
7. fin

30 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 31
le ct iv as
Es tru ct ur as se
le ct iv as Es tru ct ur as se

Lenguaje algortmico de la estructura selectiva Lenguaje algortmico de la estructura selectiva Algoritmo Dado un valor entero determinar si es
anidada del diagrama de flujo caso2: anidada del diagrama de flujo caso3: cero, positivo o negativo
1 inicio
n si condicin1 n si condicin1 2 Declaracin de variables:
entonces entonces num: entero
n1 si condicin2 n1 si condicin2 entonces 3 Leer num
entonces hacer operacin 21 4. si num ==0
hacer operacin 21 n2 fin del condicional paso n1 entonces
sino sino imprimir cero
hacer operacin 22 n3 si condicin3 sino
n2 fin del condicional del paso n1 entonces Ejemplo 1: Desarrollar un algoritmo y diagra- 4.1 si num > 0
sino hacer operacin 31 ma de flujo el cual, dado un valor entero, deter- entonces
n3 si condicin3 entonces sino minar si es cero, positivo o negativo. imprimir positivo
hacer operacin 31 hacer operacin 32 sino
n4 fin del condicional del paso n3 n4 fin del condicional del paso n3 imprimir negativo
n +1 fin del condicional del paso n n +1 fin del condicional del paso n Diagrama de flujo 4.2 fin del condicional paso 4.1
5 fin del condicional del paso 4

Diagrama de flujo

32 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 33
le ct iv as
Es tru ct ur as se
le ct iv as Es tru ct ur as se

Diagrama de flujo

3.4. Si Multiple (Case) Formato: Por ejemplo: Desarrollar un algoritmo y diagra-


si selector igual ma de flujo tal que dado como datos la categora
Estructura selectiva si mltiple valor 1: hacer accin 1 y el sueldo de un trabajador, calcule el aumento
valor 2: hacer accin 2 correspondiente teniendo en cuenta la siguiente
La estructura selectiva si mltiple permite
valor 3: hacer accin 3 tabla. Se imprimir la categora del trabajador y
que el flujo del proceso se bifurque por
valor n: hacer accin n su nuevo sueldo.
varias ramas en el punto de la toma de
decisin (es), esto en funcin del valor que fin del condicional
tome el selector. hacer accin n + 1
Categoria Aumento
Si el selector toma el valor 1 se ejecutar
1 15%
la accin 1, si toma el valor 2 se ejecutar Donde:
2 10%
la accin 2, si toma el valor n se realizar 3 8%
Selector.- variable o expresin a evaluar-
la accin n, y si toma un valor distinto de 4 7%
se, segn la cual se tomar una de las mltiples
los valores comprendidos entre 1 y n, se
decisiones o alternativas.
continuar con el flujo normal del proceso
Accin 1.- expresa la operacin o conjunto
realizndose la accin n + 1.
de operaciones que se van a realizar si el selec-
tor toma el valor 1. Algoritmo:
Accin 2.- expresa la operacin o conjunto
Diagrama de flujo
de operaciones que se van a realizar si el selec- 1. Inicio Dado la categora y el sueldo de un trabajador calcular el aumento
tor toma el valor 2. 2. Declaracin de variables:
Accin n.- expresa la operacin o conjunto cate: entero
de operaciones que se van a realizar si el selec- sue, nsue: flotante
tor toma el valor n. 3. Leer cate, sue Diagrama de flujo

Accin n + 1.- expresa la operacin que 4. si cate igual


se va a realizar cuando se contine con el flujo 1: nsue = sue * 1015
normal del proceso. 2: nsue = sue * 1010
3: nsue = sue * 1.08
4: nsue = sue * 1.07
La estructura selectiva si mltiple es muy flexi- 5. Fin de la condicin del paso 2
ble, lo que permite aplicarse de diferentes formas. 6. imprimir cate, sue
Por ejemplo observemos el siguiente formato: 7. Fin

si selector igual
valor 1,2: hacer accin 1
valor 3,4,5: hacer accin 2
de otra forma : hacer accin 3
fin del condicional
hacer accin x

34 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 35
pe tit iv as
Es tru ct ur as re
pe tit iv as Es tru ct ur as re

04 Estructuras Repetitivas
Diagrama de flujo

4.1. Mientras que (While)


Estructura repetitiva mientras (while) Formato:
La estructura algortmica mientras Hacer PI = proposicin inicial
comnmente conocida como while, es la Mientras PI es verdadera repetir
estructura adecuada para utilizar en un
ciclo cuando no sabemos el nmero de
veces que ste se ha de repetir.
Dicho nmero depende de las proposiciones proceso
dentro del ciclo.
Esta estructura permite que se repita una
accin o un conjunto de acciones, en tanto
cierta condicin se mantenga verdadera. Hacer PI = modificacin de PI
La estructura while evala primero la { Fin del ciclo } Ejemplo2: Desarrollar un algoritmo y diagrama
condicin, si se cumple se ejecuta una de flujo para obtener la suma de los gastos que
accin o conjunto de acciones; si no se Donde: hicimos en nuestro ltimo viaje, pero no sabe-
cumple, no entra al ciclo. Por lo tanto esta PI.- proposicin inicial, si el valor de PI mos exactamente cuntos fueron, deber mostrar
estructura se repite cero o ms veces. es falso, entonces el ciclo no se ejecuta. la suma total de los gastos.
Diagrama de flujo
Algoritmo: Obtener la suma de los gastos del viaje
Diagrama de flujo
Ejemplo1: Desarrollar un algoritmo y diagrama de flujo que lea
n nmeros positivos, determine y muestre el promedio de los n n-
1. inicio
meros positivos.
2. declaracin de variables:
Algoritmo: Dado n nmeros positivos obtenga el promedio
gasto, sumgas = 0: flotante
1. inicio 6. prom = suma / n
3. leer gasto
2. declaracin de variables: 7. imprimir prom
4. mientras gasto < > -1 repetir
i, n: enteros 8. fin
sumgas = sumgas + gasto
num, prom, suma =0: flotantes
leer gasto
2. leer n
5. fin del ciclo del paso 4
3. i = 1
6. imprimir sumgas
4. mientras i <= n
7. fin
leer num
suma = suma + num
i = i + 1
5. fin del ciclo del paso 4

36 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 37
pe tit iv as
Es tru ct ur as re
pe tit iv as Es tru ct ur as re

Formato:
4.2. Repetir para (For) a) Forma ascendente b) Forma descendente
hacer V = VI hacer V = VI
repetir con V desde VI hasta VF repetir con V desde VI hasta VF
Estructura repetitiva repetir (for)

La estructura repetir conocida comnmente
proceso proceso
como for, es la estructura algortmica

adecuada para realizar un ciclo que se

ejecutar un nmero definido de veces.
hacer V = V + ID hacer V = V ID
Este tipo de estructura est presente en
{ Fin del ciclo } { Fin del ciclo }
todos los lenguajes de programacin, ya
sean estructurados u orientados a objetos.
Por ejemplo cuando necesitamos calcular la
nmina total de la empresa, tenemos que
sumar los sueldos de los n empleados de la
misma.
Cuando necesitamos obtener el promedio
de calificaciones de un curso, debemos
sumar las n calificaciones de los alumnos y
dividir esa suma entre n. Es decir, sabemos
de antemano cuntas veces tenemos que
repetir una determinada operacin, accin
o tarea.
El nmero de repeticiones no depende de las
proposiciones dentro del ciclo, el nmero
de veces se obtiene del planteamiento del
problema o de una lectura que indica que el
nmero de iteraciones se debe realizar para
Donde: Funcionamiento:
n ocurrencias.
V.- variable de control del ciclo. V (contador del ciclo, generalmente represen-
Dicho de otra forma el ciclo, es controlado
VI.- valor inicial. tado por las variables i, j, k) toma un valor ini-
por un contador que tiene que definirse
VF.- valor final. cial y se compara con VF (valor final). El ciclo
con un valor inicial, un valor final y
ID.- incremento o decremento, segn sea se ejecuta mientras V es menor, menor o igual,
un incremento, esto significa que debe
la estructura ascendente o descendente. mayor, mayor o igual al valor de VF, el valor de
conocerse de antemano el nmero de veces
V se incrementa o decrementa en cada iteracin.
que se debe repetir el ciclo.
Cuando V supera el valor de VF entonces el ci-
clo se detiene.

38 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 39
pe tit iv as
Es tru ct ur as re
pe tit iv as Es tru ct ur as re

Ejemplo 1: Desarrollar un algoritmo y diagrama de flu- Diagrama de flujo


jo tal que dado como datos 10 nmeros enteros, obtenga la
suma de los 10 nmeros enteros. Se mostrar la suma de
los 10 nmeros enteros.

1. inicio Dado 10 nmeros enteros obtener la suma


2. declaracin de variables:
i, num, suma = 0: entero
3. i = 1
4. repetir con i desde 1 hasta 10
leer num
suma = suma + num
i = i + 1
5. fin del ciclo del paso 3
6. imprimir suma
7. fin

4.3. Hacer mientras (Do while)


Diagrama de flujo
Estructura repetitiva hacer Formato:
Ejemplo 2: Desarrollar un algoritmo y diagra-
mientras (do/while)
ma de flujo tal que dado como datos n nmeros Hacer PI = proposicin inicial
enteros, obtenga la suma de los n nmeros ente- La estructura algortmica hacer mientras Hacer
ros. Se mostrar la suma de los n nmeros enteros. comnmente conocida como do/while, es
una estructura de control que permite hacer
1. inicio Dado n nmeros enteros obtener una repeticin en un intervalo de uno a n
la suma veces, esto se debe a que la condicin de proceso
2. declaracin de variables: control del ciclo se coloca al final de la
i, num, n, suma = 0: entero estructura y se entra al ciclo sin evaluar la
3. leer n condicin.
4. i = 1 Primero se ejecuta y luego se evala la Hacer PI = modificacin de PI
5. repetir con i desde 1 hasta n condicin, si se cumple se regresa al ciclo, Mientras (condicin PI)
leer num si no, termina el ciclo. Por lo tanto se { Fin del ciclo }
suma = suma + num ejecutar una o ms veces.
i = i + 1 Donde:
6. fin del ciclo del paso 3
PI.- proposicin inicial, si el valor de PI es fal-
7. imprimir suma
so, entonces el ciclo no se ejecuta.
8. fin

40 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 41
pe tit iv as
Es tru ct ur as re
pe tit iv as Es tru ct ur as re

Diagrama de flujo
Ejemplo 2: Desarrollar un algoritmo y dia-
grama de flujo el cual, para n nmeros enteros
positivos mostrar los pares.

Algoritmo Para n nmeros enteros positivos mos-


trar los pares

1. inicio
2. declaracin de variables:
i, n: entero
3. leer n
4. i = 2
5. hacer
imprimir i
Ejemplo 1: Desarrollar un algoritmo y dia- i = i + 2
grama de flujo el cual, obtenga el promedio de mientras (i < = n)
n nmeros enteros, mostrar el promedio de los 6. fin del ciclo del paso 5 Diagrama de flujo
n nmeros. 7. fin

Algoritmo Obtener el promedio de n nmeros


enteros Diagrama de flujo

1. inicio
2. declaracin de variables:
i, n: enteros
num, suma = 0, prom: flotantes
3. leer n
4. i = 1
5. hacer
leer num
suma = suma + num
i = i + 1 mientras (i < = n)
6. fin del ciclo del paso 5
7. prom = suma / n
8. imprimir prom
9. fin

42 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 43
)
Da to s (A rre gl os
Da to s (A rre gl os
) Es tru ct ur as de
Es tru ct ur as de

05 Estructuras de Datos (Arreglos)



5.1 Arreglos en una
dimensin o Vectores

Arreglos Definicin de arreglo


El arreglo es un tipo de dato estructurado Un arreglo se define como una coleccin finita,
formado por un conjunto de elementos de homognea y ordenada de elementos:
un mismo tipo de datos.
En las unidades anteriores trabajamos Finita.- todo arreglo tiene un lmite, es decir se
con tipos de datos enteros, flotantes, sabe determinar cul ser el nmero mximo de
cadenas, etc., los cuales son considerados elementos que podrn formar parte del arreglo.
como datos de tipo simple, puesto que Homognea.- todos los elementos de un arre- Arreglos unidimensionales
una variable que se define con alguno de glo son del mismo tipo. Un arreglo unidimensional, est formado
estos tipos slo puede almacenar un valor Ordenada.- se puede determinar cul ser el por un conjunto de elementos de un mismo
a la vez, es decir, existe una relacin de primer elemento, el segundo, el tercero, , y
tipo de datos que se almacenan bajo un
uno a uno entre la variable y el nmero el n-simo elemento.
mismo nombre y se diferencian por la
de elementos (valores) que es capaz de posicin (ndice) que tiene cada elemento Produccin 1
almacenar. dentro del arreglo de datos. Por ejemplo: 2
En cambio un dato de tipo estructurado tenemos el nmero de unidades producidas 3
como el arreglo, puede almacenar a ms por un obrero en cada uno de los das *
de un elemento (valor) a la vez, con la Un arreglo puede del mes. Para almacenarlos y manejarlos *
condicin de que todos los elementos deben representarse grficamente definimos un arreglo de una dimensin *
ser del mismo tipo de dato, es decir, que como se muestra a de 30 elementos, como se muestra a 30
se puede tener un arreglo de datos enteros, continuacin: continuacin:
flotantes, etc. El cual define un arreglo llamado
Los arreglos se clasifican de acuerdo con produccin con 30 casillas o lugares para
el nmero de dimensiones que tienen. As, almacenar los datos de 30 das.
se tienen los arreglos unidimensionales
(una dimensin), los bidimensionales (dos
dimensiones) y los multidimensionales ( de
ms de dos dimensiones ), etc.

44 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 45
)
Da to s (A rre gl os
Da to s (A rre gl os
) Es tru ct ur as de
Es tru ct ur as de

Declaracin de arreglo unidimensional Manejo de los elementos de un arreglo Lectura Escritura


Cuando se declara un arreglo, es necesario ha- Cada elemento individual de un arreglo se rela- El proceso de lectura de un arreglo consiste en El caso de escritura es similar al de lectura. Se
cerlo como una variable: ciona con el nombre de la variable y un nmero leer y asignar un valor a cada uno de sus elemen- debe escribir el valor de cada uno de los compo-
(ndice) que indica la posicin la posicin que tos. Consideremos de nuevo nuestro ejemplo una nentes, por ejemplo, considerando nuestro ejemplo:
Nombre Variable: Arreglo [tamao] Tipo de dato ocupa el elemento dentro del arreglo. Dicho n- forma podra ser de la siguiente manera:
mero se pone entre [ ] y se le llama subndice. i=1
Donde: De acuerdo con el ejemplo anterior: Leer Produccin[1], repetir con i desde 1 hasta 30
Nombre Variable.- Nombre de identificacin Leer Produccion[2], imprimir Produccin[i]
de la variable. El elemento 1 se relaciona con Produccin[1] i = i + 1
Arreglo.- Palabra reservada que indica que la El elemento 2 se relaciona con Produccin[2] Leer Produccin[30] fin del ciclo
variable es un arreglo.
Tamao.- Nmero entero que indica la cantidad El elemento 30 se relaciona con Produccin[30] De esta forma no resultara prctico, por lo tan- Ejemplo1: Desarrollar un algoritmo y diagrama
de elementos que tendr el arreglo. to se usar un ciclo para leer todos los elemen- de flujo que reciba como entrada un arreglo uni-
Tipo.- Tipo de dato que tendr el conjunto de ele- El subndice puede ser una constante tos del arreglo: dimensional de n valores de tipo entero y mues-
mentos del arreglo que se esta definiendo, puede numrica entera como 1, 2, 3,, 30, una tre el arreglo unidimensional:
ser entero, real, carcter, etc. variable de tipo entero, como: Produccin [ i=1
i ], o bien, una expresin algebraica que de repetir con i desde 1 hasta 30 Algoritmo Arreglo de n elementos enteros
Si recordamos el ejemplo anterior, la forma de un resultado de tipo entero como: leer Produccin[i] mostrarlos
declararlo es: i=i+1 1. inicio
Produccin: Arreglo [30] entero Produccin [ i + 3 ] fin del ciclo 2. declaracin de variables:
Produccin es el nombre de la variable. Produccin [ (i * 4) j ] i, n: entero
Es un arreglo que contiene 30 elementos arr: arreglo[n] entero
(de 1 a 30). Como toda variable, una de tipo arreglo 3. leer n
Cada elemento del arreglo ser un dato de puede usarse para leer datos, asignarle 4. i = 1
tipo entero. valores mediante expresiones aritmticas, 5. repetir con i desde 1 hasta n
imprimir su contenido, formar parte de leer arr[i]
expresiones lgicas , etc. i = i +1
6. fin del ciclo del paso 5
7. i = 1
8. repetir con i desde 1 hasta n
imprimir arr[i]
i = i + 1
9. fin del ciclo del paso 8
10. fin

46 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 47
)
Da to s (A rre gl os
Da to s (A rre gl os
) Es tru ct ur as de
Es tru ct ur as de

Diagrama de flujo Diagrama de flujo

Ejemplo 2: Desarrollar un algoritmo y diagra- Algoritmo


ma de flujo que reciba como entrada un arreglo 1. inicio
unidimensional que corresponde a los sueldos 2. declaracin de variables:
de un grupo de 70 empleados de una empresa y i, conta = 0: entero Ejemplo 3: Desarrolla un algoritmo y diagra- Algoritmo
necesitamos saber cuntos de estos empleados prom, acsue = 0: flotante ma de flujo que reciba como entrada dos arreglos 1. inicio
tienen un sueldo superior al promedio del gru- sue: Arreglo[70] flotante unidimensionales cada uno con 20 nmeros ente- 2. declaracin de variables:
po. Mostrar el total de empleados que tiene un 3. i = 1 ros, calcular la suma uno a uno de los elementos a, b, c: Arreglo[20] entero
sueldo superior al promedio del grupo. 4. repetir con i desde 1 hasta 70 de los dos arreglos y almacenar el resultado en un i: entero
leer sue[i] tercer arreglo. Mostrar al final los tres arreglos. 3. i = 1
acsue = acsue + sue[i] 4. repetir con i desde 1 hasta 20
i = i + 1 leer a[i]
5. fin del ciclo del paso 4 leer b[i]
6. prom = acsue / 70 c[i] = a[i] + b[i]
7. i = 1 i = i + 1
8. repetir con i desde 1 hasta 70 5. fin del ciclo del paso 4
8.1 si sue[i] > prom entonces 6. i = 1
conta = conta + 1 7. repetir con i desde 1 hasta 20
8.2 fin del condicional del paso 8.1 imprimir a[i], b[i], c[i]
i = i + 1 i = i +1
9. fin del ciclo del paso 8 8. fin del ciclo del paso 7
10. imprimir conta 9. fin
11. fin

48 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 49
)
Da to s (A rre gl os
Da to s (A rre gl os
) Es tru ct ur as de
Es tru ct ur as de

Diagrama de flujo
Representacin de un
arreglo bidimensional:
Tal que: 1<=i<=M
1<=j<=N

1 2 . j . N
1
2
.
i
.
M

Declaracin de arreglos Donde:


Arreglos multidimensionales bidimensionales
NombreArreglo.- nombre de identificacin
Los arreglos presentados en el tema El arreglo bidimensional o de dos Al declarar un arreglo es necesario hacerlo como de la variable.
anterior reciben el nombre de arreglos dimensiones, est formado por un conjunto una variable, por la cual en la parte de declaracio- Arreglo.- palabra reservada que indica que la
unidimensionales o lineales, debido a que de elementos de un mismo tipo de datos nes de variables se utiliza el siguiente formato: variable es un arreglo.
cualquier elemento es referenciado por un que se almacenan bajo un mismo nombre TamaoRenglones.- indica el nmero de ren-
nico ndice. y que al igual que en el unidimensional, NombreArreglo: Arreglo[TamaoRenglones, glones que tendr el arreglo.
Tambin existe en la mayora de los se diferencian por la posicin que tiene TamaoColumnas] Tipo de dato. TamaoColumnas.- indica el nmero de co-
lenguajes de programacin una estructura cada elemento dentro del arreglo de datos, lumnas que tendr el arreglo
de arreglos multidimensionales. El nmero con la aclaracin de que la disposicin de Tipo de dato.- es el tipo de dato que tiene el
de dimensiones (ndices) que se deben los elementos es en forma rectangular o conjunto de elementos del arreglo que se est
utilizar en un arreglo depende del problema cuadrada, donde la primera dimensin est definiendo; puede ser entero, real, etc.
que debemos resolver. dada por los renglones y la segunda por las
En este tema analizaremos los arreglos columnas. Por ejemplo, si aplicamos los conceptos del for-
bidimensionales (caso especial de los Un arreglo de este tipo, tambin conocido mato para definir la matriz de orden 4 x 5 de n-
multidimensionales) por ser los mas como matriz, es del orden M x N, donde meros enteros, tenemos:
utilizados. M es el nmero de renglones y N el nmero
de columnas, es decir, en forma de tabla. Matriz: Arreglo[4, 5] entero
Un elemento [i, j] estar en el rengln i y 1. Matriz es el nombre de la variable.
en la columna j. internamente en memoria 2. Es un arreglo que contiene a renglones y 5 co-
se reservan M x N posiciones consecutivas lumnas (20 elementos).
para almacenar todos los elementos del 3. Cada elemento del arreglo es un dato de tipo
arreglo. entero.

50 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 51
)
Da to s (A rre gl os
Da to s (A rre gl os
) Es tru ct ur as de
Es tru ct ur as de

Manejo de los elementos de una matriz Lectura Escritura


Para relacionar cada elemento individual de una Para realizar la lectura de una matriz los elemen- El procedimiento para una escritura es similar Ejemplo 1: Desarrollar un algoritmo y diagra-
matriz se usan dos subndices; el primero indica tos deben referenciarse por medio de dos ndices, al de una lectura ma de flujo el cual, reciba como entrada un arre-
el rengln y el segundo la columna, como sigue: normalmente se usan dos ciclos (anidados) para glo bidimensional de orden m x n con valores de
Matriz[Rengln, Columna] lograr la lectura de elementos consecutivos. Por i=1 tipo entero y muestre el arreglo bidimensional:
ejemplo leer los elementos de una matriz de or- Repetir con i desde 1 hasta 5
donde: den 5 x 3, los pasos a seguir son los siguientes: j = 1 Algoritmo
Repetir con j desde 1 hasta 3 1. inicio
Rengln.- indica el nmero de rengln y
i=1 Imprimir Matriz[i, j] 2. declaracin de variables:
Columna.- indica el nmero de columna que
Repetir con i desde i hasta 5 j = j +1 i, j, m, n: entero
ocupa el elemento relacionado.
j = 1 fin del ciclo interno mat: Arreglo[m, n] entero
Repetir con j desde 1 hasta 3 i = i + 1 3. leer m, n
Los subndices pueden ser constantes, variables
leer matriz[i, j] fin del ciclo externo 4. i = 1
o expresiones de tipo entero.
j=j+1 5. repetir con i desde 1 hasta m
fin del ciclo interno j = 1
Como toda variable, una de tipo matriz puede
i = i + 1 5.1 repetir con j desde 1 hasta n
usarse para leer datos, asignarle valores median-
fin del ciclo externo leer mat[i, j]
te expresiones aritmticas, imprimir su conte-
j=j+1
nido, formar parte de expresiones lgicas, etc.
Al variar los ndices de i y j se lee un elemen- 5.2 fin del ciclo del paso 5.1
Por ejemplo:
to de matriz, segn la posicin indicada por los i = i + 1
ndices i y j 6. fin del ciclo del paso 5
Matriz[1, 1] = 20
7. i = 1
Leer Matriz[R, C]
Para i = 1 y j = 1, se lee el elemento del rengln 8. repetir con i desde 1 hasta m
Leer Matriz[3, 4]
1 y columna 1 j = 1
Matriz[1, 2] = Matriz[1, 2] + Matriz[2, 3]
8.1 repetir con j desde 1 hasta n
Imprimir Matriz[1, 2]
i = 1 y j = 2, se lee el elemento del rengln 1 y imprimir mat[i, j]
columna 2 j=j+1
8.2 fin del ciclo del paso 8.1
i = i + 1
9. fin del ciclo del paso 8
i = 5 y j =3, se lee el elemento del rengln 5 y 10. fin
columna 3

52 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 53
)
Da to s (A rre gl os
Da to s (A rre gl os
) Es tru ct ur as de
Es tru ct ur as de

Diagrama de flujo
Ejemplo 2: Desarrollar un algoritmo y dia- Algoritmo
grama de flujo el cual reciba como entrada un 1. inicio
arreglo bidimensional de orden m x n con valo- 2. Declaracin de variables
res de tipo entero, para calcular la suma de los i, j, m, n, sumdiag=o: entero
elementos de la diagonal principal. Mostrar el mat: Arreglo[m, n] entero
arreglo bidimensional y la suma de los elemen- 3. Leer m, n
tos de la diagonal principal. 4. i = 1
5. repetir con i desde 1 hasta m
j=1
5.1 repetir con j desde 1 hasta n
leer mat[i, j]
5.1.1 si i == j entonces
sumdiag = sumdiag + mat[i, j]
5.1.2 fin del condicional 5.1.1
j=j+1
5.2 fin del ciclo del paso 5.1
Continuacin del Diagrama de flujo
i=i+1
6. fin del ciclo del paso 5
7. i = 1
8. repetir con i desde 1 hasta m
j = 1
8.1 repetir con j desde 1 hasta n
imprimir mat[i, j]
j=j+1
8.2 fin del ciclo del paso 8.1
i = i + 1
9. fin del ciclo del paso 8
10. imprimir sumdiag
11. fin

54 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 55
i n
pa ra la si m ul ac
Da to s (A rre gl os
) He rra m ie nt as
Es tru ct ur as de

06 Herramientas para la simulacin


Diagrama de flujo

6.1. Pseudocdigo LPP

Lpp es un lenguaje de programacin para prin- Va dirigido a todos aquellos que quieren em-
cipiantes, el cual fue diseado con la idea de fa- pezar en el gran mundo de la programacin y no
cilitar el proceso de enseanza-aprendizaje de un saben por dnde empezar. Es una forma fcil de
leguaje de programacin en nuestro idioma, este aprender ya que se trata de una forma de progra-
contiene la mayora de instrucciones que tienen macin en nuestro propio lenguaje.
los lenguajes de programacin.

Continuacin del Diagrama de flujo

56 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 57
i n
pa ra la si m ul ac
He rra m ie nt as

6.2. Diagramas de flujo DFD


Glosario
DFD es un editor e intrprete de diagramas de Dependiendo del tipo de objeto, hacer doble-
flujo con el cual puedes dar forma grfica a un clic abrir un cuadro de dilogo diferente en el
gran nmero de algoritmos, ejecutarlos y depu- que introducir datos. Por ejemplo, en Condicin
rarlos en caso de hallar errores. se puede establecer la direccin de la condicin Algoritmo Lgica
verdadera y la expresin que debe verificarse. Es un conjunto preescrito de instrucciones o re- Ciencia que expone las leyes, modos y formas
Los diagramas de flujo (tambin llamados DFD) DFD simplifica bastante el diseo de los sub- glas bien definidas, ordenadas y finitas que per- del conocimiento cientfico. La que opera utili-
sirven para representar algoritmos y procesos programas. mite realizar una actividad mediante pasos suce- zando un lenguaje simblico artificial y hacien-
similares que resuelven problemas a travs del sivos que no generen dudas a quien deba realizar do abstraccin de los contenidos.
computador. DFD nos permite enriquecer y com- Cuando quieras probar tu diagrama, la tecla dicha actividad. Conjunto ordenado y finito de
pletar esos diagramas DFD incluyendo multitud F9 iniciar la ejecucin. Tambin puedes usar operaciones que permite hallar la solucin de Plataforma
de elementos y guardndolos despus en el dis- los controles de reproduccin o recurrir al men un problema.
co o imprimindolos mediante una impresora. Depuracin para evaluar una expresin o efec- Es un sistema que sirve como base para hacer
tuar un paso simple. El directorio de DFD in- funcionar determinados mdulos de hardware o
Instruccin
En la barra superior de DFD se agrupan los cluye ejemplos de diagrama de flujo para que te de software con los que es compatible.
objetos necesarios para la construccin de los familiarices con su interfaz. Conjunto de datos insertados en una secuencia
diagramas. Se parte siempre de una plantilla con estructurada o especfica que el procesador in- Pseucodigo
un estado inicial y uno final, conectados por una terpreta y ejecuta.
Es una descripcin de un algoritmo informtico
flecha. Los tems se posicionan con un clic sobre
de programacin de alto nivel compacto e infor-
el tramo de conexin elegido: DFD se encarga Iteracin
mal que utiliza las convenciones estructurales de
de redibujar los elementos.
Accin y efecto de repetir. un lenguaje de programacin verdadero, pero que
est diseado para la lectura humana en lugar de
Lenguaje la lectura en mquina, y con independencia de
cualquier otro lenguaje de programacin.
Es un idioma artificial diseado para expresar
procesos que pueden ser llevadas a cabo por m-
Problema
quinas como los computadores. Pueden usarse
para crear programas que controlen el compor- Planteamiento de una situacin cuya respuesta
tamiento fsico y lgico de una mquina, para desconocida debe obtenerse a travs de mtodos
expresar algoritmos con precisin, o como modo cientficos. Conjunto de hechos o circunstancias
de comunicacin humana. que dificultan la consecucin de algn fin.

58 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 59
ito ria l
fe re nc ia s y Fu
en te s Cr d ito s de ed
Bi bl io gr af a , Re

Equipo de Exper tos temticos y de


Diseo para Produccin de
Bibliografa, Referencias y Fuentes Crditos de editorial Multimedia SENA

De Sanchez, M. (2004). Aprende a Pensar 5 Solucin de Problemas. Mxico DF: Editorial Trillas.
Revisin, Preparacin y Lder de produccon
SENA, (2011, 20 de Diciembre). Metodologa de la Programacin de Sistemas Informticos. Bo-
got DC: Servicio Nacional de Aprendizaje. Recuperado el 18 de abril de 2010 de Compilacin.
Iliana Eneth Molina Cuartas
http://www.senavirtual.edu.co.
Freddy Oswaldo Ovalles Pabn Profesional grado 10
Cair, O. (2008). Metodologa de la Programacin, algoritmos, diagramas de flujo y programas ilmocu@sena.pedu.co
Instructor Multimedia SENA Regional Norte de
(3a. Ed.). Buenos Aires: Alfa Omega Grupo Editor.
Santander Centro CIES.

Descargar LPP [Lenguaje de Programacin para principiantes]. Recuperado el 20 de noviembre


fovalles@misena.edu.co
Revisin Temtica
de 2011 de
http://www.gratisprogramas.org/descargar/lpp-lenguaje-de-programacion-para-principiantes-rs/ Diseo editorial
Dorian sully munera rua
dsmunera@misena.edu.co
DFD Descargar (2008, 23 de octubre). Recuperado el 20 de noviembre de 2011 de
http://dfd.softonic.com/ Alejandro Orozco Escobar
Diseador visual Profesional
Revisin Metodolgica y
designifrit@gmail.com Correccin de Estilo

Diagramacin Adriana Marcela Bedoya V


abedoya@misena.edu.co

Alejandro Orozco Escobar


Ilustracin
Diseador visual Profesional

Alejandro Orozco Escobar


Colaboracin
Diseador visual Profesional
Sergio Areiza
Diseador grfico Mario Andrs Sepulveda Mazo
sergioareiza@hotmail.com
Diseador visual Profesional
m_sepulveda@misena.edu.co

60 Sena Produccin en multimedia Fase Anlisis Fase Anlisis Sena Produccin en multimedia 61
Co nt ra ta pa

lisis
Fase de an

62 Sena Produccin en multimedia Fase Anlisis

También podría gustarte