Вы находитесь на странице: 1из 65

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Pgina 1 de 65

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 2 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

TABLA DE CONTENIDO

1.

INTRODUCCIN DEL MDULO ....................................................................................... 9

2.

COMPETENCIAS E INDICADORES DE DESEMPEO ................................................. 10

3.

UNIDAD 1 ELEMENTO BSICOS DE PROGRAMACIN ........................................ 11

3.1.

Introduccin a los Algoritmos .......................................................................................... 11

3.1.1.

Definicin de Algoritmos ............................................................................................... 2

3.1.1.2. Caractersticas del algoritmo........................................................................................... 3


3.1.2.

Diagramas de Flujo ......................................................................................................... 4

3.1.3.

Seudocdigo .................................................................................................................... 5

3.1.4.

Prueba de Escritorio ........................................................................................................ 7

3.2.

Variables y constantes......................................................................................................... 7

3.2.1.
3.3.

Tipos de Datos ................................................................................................................ 7


Operadores ........................................................................................................................ 10

3.3.1.

Aritmticos.................................................................................................................... 10

3.3.2.

Lgicos .......................................................................................................................... 11

3.3.3.

Relacionales .................................................................................................................. 12

3.3.4.

Operaciones - Resolucin de frmulas ......................................................................... 12

3.4.

Ejercicios Resueltos .......................................................................................................... 15

3.5.

Ejercicios Propuestos ........................................................................................................ 18

3.6.

BIBLIOGRAFA. ............................................................................................................. 19

3.7.

BIBLIOGRAFA DE APOYO ......................................................................................... 20

3.8.

SITIOS WEB O URL DE CONSULTA ........................................................................... 20

4.
4.1.

UNIDAD 2 ESTRUCTURAS DE CONTROL ................................................................. 21


Introduccin ...................................................................................................................... 21

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

4.1.1.

Pgina 3 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Estructuras Condicionales ............................................................................................. 22

4.1.1.1. Estructuras Condicionales Simples ............................................................................... 22


4.1.1.2. Estructuras Condicionales Mltiples ............................................................................ 24
4.1.1.3. Condicionales anidados ................................................................................................ 26
4.1.2.

Estructuras Repetitivas.................................................................................................. 28

4.1.2.1. Acumuladores ............................................................................................................... 29


4.1.2.2. Incrementadores y decrementadores ............................................................................. 29
4.1.2.3. Ciclo Mientras ............................................................................................................... 30
4.1.2.4. Ciclo Repetir - Hasta ..................................................................................................... 32
4.1.2.5. Ciclo - Para ................................................................................................................... 34
4.2.

Ejercicios Propuestos ........................................................................................................ 36

4.3.

BIBLIOGRAFA .............................................................................................................. 40

4.4.

BIBLIOGRAFA DE APOYO ......................................................................................... 41

4.5.

SITIOS WEB O URL DE CONSULTA ........................................................................... 41

5.

UNIDAD 3 COLECCIONES ............................................................................................ 42

5.1.

Arreglos............................................................................................................................. 42

5.1.1.

Arreglos unidimensionales............................................................................................ 43

5.1.1.1. Recorrido de un vector .................................................................................................. 44


5.1.1.2. Llenado de un vector ..................................................................................................... 45
5.1.1.3. Bsqueda de un vector .................................................................................................. 46
5.1.1.4. Ordenamiento de un vector ........................................................................................... 47
5.1.1.4.1.

Mtodo de burbuja .................................................................................................... 47

5.1.2.

Arreglos multidimensionales. ....................................................................................... 48

5.1.3.

Ejercicios Propuestos .................................................................................................... 50

5.2.

BIBLIOGRAFA .............................................................................................................. 53

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 4 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

5.3.

BIBLIOGRAFA DE APOYO. ........................................................................................ 54

5.4.

SITIOS WEB O URL DE CONSULTA ........................................................................... 54

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 5 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

LISTADO DE TABLAS
Tabla 1: Smbolos bsicos para el uso de diagramas de flujo.

Tabla 2: Tipos de datos comunes en la algoritmia

Tabla 3: Operadores aritmticos.

10

Tabla 4: Operadores lgicos

11

Tabla 5: Tablas de valor de los operadores lgicos

11

Tabla 6: Operadores relacionales

12

Tabla 7: Definicin de entradas del sistema

13

Tabla 8: Definicin de salidas del sistema

13

Tabla 9: Definicin del proceso a ejecutar.

13

Tabla 10: prueba de escritorio.

15

Tabla 11: Llenado de la tabla de anlisis

15

Tabla 12: Prueba de escritorio clculo de fuerza

17

Tabla 13: Comportamiento bsico de condicional simple

22

Tabla 14: Anlisis para algoritmo de un nmero mayor que 5

23

Tabla 15: Prueba de escritorio de un nmero mayor que 5

24

Tabla 16: Comportamiento bsico de condicional mltiple

24

Tabla 17: Anlisis de condicional mltiple

25

Tabla 18: Condicional mltiple

26

Tabla 19: Ejemplo Condicional anidado

26

Tabla 20: Anlisis condicional anidado

27

Tabla 21: Prueba de escritorio condicional anidado

28

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 6 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Tabla 22: Anlisis de ciclo Mientras

30

Tabla 23: Prueba de escritorio ciclo Mientras

32

Tabla 24: Prueba de escritorio ciclo Repita-Hasta

34

Tabla 25: Prueba de escritorio ciclo Para

35

Tabla 26: Algoritmo de recorrido incremental de un vector

45

Tabla 27: Algoritmo de recorrido decremental de un vector

45

Tabla 28: Llenado de un vector

45

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 7 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

LISTADO DE FIGURAS
Figura 1: Diagrama de Flujo realizado en PSEINT.

Figura 2: Ejemplo de seudocdigo en PSEINT

Figura 3: Tabla de cdigos ASCII- tomado http://www.asciitable.com/

Figura 4: Tabla de cdigos ASCII extendido - tomado http://www.asciitable.com/

Figura 5: Diagrama de flujo de algoritmo para la suma de dos nmeros.

14

Figura 6: Diagrama de Flujo para el clculo de la fuerza

16

Figura 7: Clasificacin de las estructuras de control

21

Figura 8: Diagrama de flujo de un nmero mayor que 5

23

Figura 9: Diagrama de flujo condicional mltiple

25

Figura 10: Diagrama de flujo condicional anidado

27

Figura 11: Diagrama de flujo ciclo Mientras

31

Figura 12: Diagrama de Flujo ciclo Repita-Hasta

33

Figura 13: Diagrama de flujo ciclo Para

35

Figura 14: Vector de enteros

43

Figura 15: Ejemplo tablero de ajedrez

49

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 8 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

LISTADO DE SEUDOCODIGOS
Seudocdigo 1: Suma de dos nmeros

14

Seudocdigo 2: Calculo de la fuerza

17

Seudocdigo 3: Nmero mayor que 5

23

Seudocdigo 4: Condicional mltiple

26

Seudocdigo 5: Condicional anidado

28

Seudocdigo 6: Ciclo mientras

31

Seudocdigo 7: Ciclo Repita-Hasta

33

Seudocdigo 8: Ciclo Para

35

Seudocdigo 9:Vector Lleno segn el algoritmo

46

Seudocdigo 10: Llenado de vector con datos desde teclado

46

Seudocdigo 11: Proceso de bsqueda de un elemento en un vector

46

Seudocdigo 12: Ordenamiento por mtodo de la burbuja

48

Seudocdigo 13: Definicin de un vector

49

Seudocdigo 14: Recorrido de un matriz

50

Seudocdigo 15: Llenar matriz

50

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 9 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

1. INTRODUCCIN
El ejercicio de la Ingeniera Informtica implica desarrollar software para diversas actividades,
porque se desarrollan aplicativos que facilitan la gestin de la informacin y la administracin de
sistemas electrnicos digitales que han evolucionado, desde la aparicin de la computadora. EL
computador es una mquina integral que no solo se refiere a la parte fsica (hardware), sino que
se resalta la importancia de los programas del equipo (software), permitiendo el acceso a todos
los recursos del sistema.

Por tanto, elementos bsicos de programacin introducen al estudiante en el uso de mtodos y


tcnicas que le permiten ampliar su esquema de pensamiento y abstraccin para el desarrollo de
algoritmos, de la misma forma, dar solucin a problemas por medio de la lgica y operaciones
matemticas que son ejecutadas por un sistema digital. Adems, podr obtener una visin nueva
para abordar los problemas de la vida real y acercarse a la solucin representada en algoritmos
que se codifican en lenguajes de programacin.

Este curso establece los procedimientos bsicos para que el estudiante construya programas de
aplicacin empleando el pseudolenguaje y finalmente se codifiquen en un lenguaje de
programacin como C++ o Java, compiladores que cuentan con estructuras similares a otros
lenguajes, que se trabajarn en semestres posteriores.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 10 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

2. COMPETENCIAS E INDICADORES
ELEMENTOS DE COMPETENCIA

INDICADORES DE DESEMPEO
Identificar los mtodos de solucin, para resolver

Variables

problemas que requieren el uso de variables, a


partir de la estructura de un pseudolenguaje
Aplicar las estructuras de control para solucionar

Estructuras de control

problemas que requieren decisiones y estructuras


repetitivas, cumpliendo con los parmetros de los
algoritmos.
Usar los elementos de programacin como los

Colecciones

vectores y matrices, para el manejo de colecciones


dentro de los parmetros de almacenamiento en
memoria esttica.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 11 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

3. UNIDAD 1 ELEMENTO BSICOS DE PROGRAMACIN


En esta unidad usted podr identificar los aspectos bsicos para la generacin de algoritmos y
desarrollo de problemas de aplicacin, mediante el uso de herramientas informticas avanzadas.

3.1.

Introduccin a los Algoritmos

Los Algoritmos definen todos los elementos de nuestra vida, y se presentan a menudo, en cada
cosa que se hace, todos somos desarrolladores de software en potencia, y tenemos habilidad para
comprender el significado de este curso, que realmente tiene la intencin de ayudar con la
organizacin del pensamiento sistmico, para definir un algoritmo de forma clara.

Se debe tener en cuenta sus habilidades para la algoritmia, solucione el siguiente caso, describa
los pasos para fritar un huevo.

Sacar el huevo
Prender la estufa.
Romper huevo.
Vaciar en la cacerola.
Esperar a que se sofre.
Servir.

Si usted fue de las personas que acert en estos pasos lgicos, se encuentra bien encaminado,
pero tiene que comprender que las maquinas (Computadoras) no cuentan con una inteligencia
autnoma, que le permita asumir acciones que para nosotros los humanos suelen ser obvias,
entonces realicemos nuevamente el problema teniendo en cuenta todas las variables que se
puedan presentar.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 1 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

1. Inicio.
2. Verificar si hay huevos
a. Si, contine
b. No, fin
3. Hay aceite
a. Si, contine
b. No, fin.
4. Buscar cacerola
5. Esta limpia
a. Si, contine
b. No, lavarla.
6. Abrir llave de gas.
7. Encender estufa.
a. Enciende?
i. Si, contine
ii. No, Repita.
8. Colocar cacerola en la estufa.
9. Vaciar aceite en la cacerola.
a. Suficiente?
i. Si, contine.
ii. No, repita.

10. Aceite est caliente?


a. Si, contine
b. No, espere.
11. Rompa el huevo
12. Huevo est podrido?
a. Si, fin.
b. No, contine.
13. Vaciar huevo
a. Se rego el huevo?
i. Si, Limpiar.
ii. No, contine.
14. Huevo listo?
a. Si, contine.
b. No, espere.
15. Bajar cacerola.
16. Apagar estufa
17. Servir
18. Fin

Aunque parece un proceso relativamente sencillo, existen pasos que se salt en el proceso, o
algunas variables que no tuvo en cuenta por parecer demasiado obvias, pero en el desarrollo de
software, no se debe asumir que algn proceso es obvio, Se recomienda que preste atencin y
todos sus sentidos en el desarrollo de este curso, el cual est diseado de una forma clara para
que usted pueda aprender y desarrollar estas habilidades. Otra recomendacin y la ms
importante, es que no se d por vencido al enfrentarse con el error o la complejidad, existe una
probabilidad muy alta que fracase en el desarrollo de los primeros ejercicios, pero es cuestin de
empeo y dedicacin.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 2 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

A continuacin encuentra una serie de ejercicios que debe desarrollar para que se evale y tenga
en cuenta todos los aspectos que usted asume, y pueda diferenciar entre el pensamiento humano
y la mquina.
1. Especifique los pasos lgicos para cambiar una llanta de un carro.
2. Determine los pasos para cambiar el paal de un bebe.
3. Muestre los pasos que debe seguir desde que se despierta hasta que sale a trabajar o a
estudiar.
4. Describa el proceso para vestirse.
5. Especifique los pasos para ir a cine.
6. Explique el proceso para lavar una camisa.
3.1.1. Definicin de Algoritmos
3.1.1.1.

Qu es un algoritmo?

Algunos autores definen los algoritmos como:


Secuencia finita de instrucciones, reglas o pasos que describen de forma precisa las
operaciones de un ordenador debe realizar para llevar a cabo una tarea en un tiempo ms
finito. (Knuth, 1969).
Descripcin de un esquema de comportamiento expresado mediante un repertorio finito
de acciones y de informaciones elementales, identificadas, bien comprendidas y
realizables a priori. Este repertorio se denomina lxico.(Scholl, 1988)

Un algoritmo es un conjunto finito de pasos definidos, estructurados en el tiempo y


formulados con base a un conjunto finito de reglas no ambiguas, que proveen un
procedimiento para dar la solucin o indicar la falta de esta a un problema en un tiempo
determinado. (Quispe Otazu, 2007)

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 3 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

A partir de estas denominaciones se puede asumir la definicin ms acertada al propsito del


curso la siguiente:

Un algoritmo es una secuencia de pasos lgicos para la solucin de un determinado


problema, es decir si se requiere solucionar un problema se debe planear toda la secuencia
de instrucciones para resolver dicho problema.

3.1.1.2.

Caractersticas del algoritmo

Por otra parte, es importante definir las caractersticas de un algoritmo; segn Rodolfo Quispe un
algoritmo debe ser definido es decir representarse de forma clara eliminando las ambigedades
que se puedan presentar, segn Knuth debe ser finito, por lo tanto debe tener un punto de inicio
y uno de fin, asimismo debe tener cero o ms entradas, y por lo menos una salida, y por ultimo
debe ser efectivo, es decir, cada instruccin debe ser especfica para la solucin del problema
evitando instrucciones redundantes.

Para la realizacin de un algoritmo debe tener en cuenta los siguientes elementos de la


programacin.

Anlisis.

Diagramacin.

Codificacin.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 4 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Prueba de escritorio.

3.1.2. Diagramas de Flujo


Un diagrama de flujo es la representacin grfica de un algoritmo; mostrando de una forma clara
cada una de las instrucciones a procesar; para estos diagramas se utiliza una serie de
convenciones o smbolos reconocidos internacionalmente por los desarrolladores, determinando
los diagramas de flujo como una herramienta universal.
Inicio del algoritmo planteado
Proceso a realizar en el algoritmo
Entradas y salidas dentro del programa.
Condicional Simple

Condicional Mltiple

Estructura Repetitiva
Conector
Tabla 1: Smbolos bsicos para el uso de diagramas de flujo.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 5 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Figura 1: Diagrama de Flujo realizado en PSEINT.

Bajo este conjunto de smbolos el estudiante podr resolver todos los problemas propuestos
dentro de este curso; es importante que mantenga a la mano un catlogo de smbolos que le
permitan realizar las actividades requeridas.

3.1.3. Seudocdigo
Es la representacin de las instrucciones en lenguaje natural, de tal forma que sea entendible para
el desarrollador, es imprescindible que mantenga un orden claro a la hora de escribir el
seudocdigo, ya que el ms mnimo error en la organizacin puede generar inconvenientes o
confusiones para el que lo lee; as mismo, se recomienda que realice el cdigo de una forma

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 6 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

INDENTADA1, con el fin de indicar la pertenencia de las instrucciones a su respectivo mbito


como se muestra en la figura 2.

Figura 2: Ejemplo de seudocdigo en PSEINT

En este caso se realiz un seudocdigo muy sencillo dentro del aplicativo sugerido teniendo en
cuenta la identacin del proceso, ms adelante comprender los procesos necesarios para
elaborar este tipo de aplicativos.

Indentacin es un anglicismo (de la palabra inglesa indentation) de uso comn en informtica, que significa

mover un bloque de texto hacia la derecha insertando espacios o tabuladores, para as separarlo del margen
izquierdo y mejor distinguirlo del texto adyacente; en el mbito de la imprenta, este concepto siempre se ha
denominado sangrado o sangra.

En los lenguajes de programacin de computadoras, la indentacin es un tipo de notacin secundaria utilizado


para mejorar la legibilidad del cdigo fuente por parte de los programadores, teniendo en cuenta que los
compiladores o intrpretes raramente consideran los espacios en blanco entre las sentencias de un programa

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 7 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

3.1.4. Prueba de Escritorio


La prueba de escritorio consiste en la ejecucin paso a paso de las instrucciones planteadas
dentro del algoritmo desarrollado, es decir ejecutar y realizar lo que expresa el algoritmo lnea
por lnea, este proceso tambin es llamado depuracin.

3.2.

Variables y constantes

Las variables y constantes se encargan del almacenamiento temporal o definitivo en memoria


dinmica, es decir, mientras el programa se encuentra en ejecucin. De esta forma, se puede
caracterizar estos elementos dentro de un programa teniendo en cuenta su comportamiento; toda
variable puede ser intervenida, qu significa operada y variar su valor en ejecucin mientras que
la constante conserva su valor durante este proceso.

3.2.1. Tipos de Datos


Los tipos de datos se clasifican segn su uso dentro del aplicativo, es decir, segn su propsito.

Tipo de Dato

Subtipo
Uso

Numrico

Entero

Descripcin

Permite
almacenar
valores
que
pertenecen al conjunto de los nmeros
enteros

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 8 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Texto

Real

Permite
almacenar
valores
que
pertenecen al conjunto de los nmeros
reales.

Cadena

Se expresan todo tipo de expresiones


alfanumricas que se desean almacenar
siempre y cuando sean caracteres
imprimibles dentro de la tabla ASCII2

Tabla 2: Tipos de datos comunes en la algoritmia

Con las variables o constantes puede resolver cualquier problema algortmico, a lo largo de su
desarrollo como ingeniero informtico encontrara otros tipos de datos ms avanzados y propios
de cada lenguaje de programacin,3 por el momento y con fines educativos se recomienda que
inicie por entender estos tipos, ya que estos le permitir comprender con mayor facilidad los
tipos de datos que estudiar en cursos posteriores.

ASCII - American Standard Code for Information Interchange (Cdigo estndar americano para el

intercambio de informacin)
3

Lenguaje de programacin - Lenguaje formal diseado para expresar procesos que pueden ser llevados

a cabo por mquinas como las computadoras

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 9 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Figura 3: Tabla de cdigos ASCII- tomado http://www.asciitable.com/

Figura 4: Tabla de cdigos ASCII extendido - tomado http://www.asciitable.com/

Tomado de www.asciitable.com

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

3.3.

Pgina 10 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Operadores

En el momento que usted desea construir un algoritmo debe tener en cuenta diferentes
operadores, pero es importante que conozca el concepto de un operador, representado dentro de
una expresin como el indicador de la operacin a realizar, por lo tanto, define la instruccin y
la aplicacin de dicha expresin dentro del algoritmo.

3.3.1. Aritmticos
Los operadores aritmticos son los que se utilizan en expresiones aritmticas, con el fin de
resolver dicha instruccin.
Operador Descripcin
<+
*
/
MOD
^

Ejemplo

Asignacin, permite asignarle el valor a una constante o una


variable segn sea el caso.
Suma o incremento, permite la adicin del valor de una
variable siempre y cuando sea numrica
Resta o decremento, permite la adicin del valor de una
variable siempre y cuando sea numrica
Multiplicacin, permite la multiplicacin de dos valores
Divisin, permite la entre dos valores
Modulo o residuo, calcula el residuo de una divisin entre
dos nmeros
Potencia, permite elevar un nmero a la potencia descrita
Tabla 3: Operadores aritmticos.

X<-3
X <- 3+5
X <- 3-5
X <- 3*5
X <- 3/5
X <- 5 MOD 2
X <- 5 ^ 2

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 11 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

3.3.2. Lgicos
Estos operadores implican la combinacin de dos o ms expresiones
Operador Descripcin
Y
O

Ejemplo

Conjuncin, se utiliza para la combinacin de dos


expresiones siempre y cuando se cumplan
las dos
expresiones devuelve un valor verdadero.
Disyuncin, se utiliza para validar que por lo menos una de
las dos expresiones se cumpla en ese caso retorna un valor
verdadero.
Negacin, permite la negacin de la expresin descrita.

NO

(X>2) Y (Z<3)
(X>2) O (Z<3)
NO (X>2)

Tabla 4: Operadores lgicos

Para estos operadores debe considerar las tablas de verdad de los operadores cumpliendo as con
los parmetros evaluativos de la expresin en los condicionales.
O
Verdadero
Falso

Verdadero
Verdadero
Verdadero

Y
Verdadero
Falso

Verdadero
Verdadero
Falso

NO
Verdadero
Falso

Falso
Verdadero
Falso
Falso
Falso
Falso

Falso
Verdadero

Tabla 5: Tablas de valor de los operadores lgicos

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 12 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

3.3.3. Relacionales
Los operadores relacionales permiten relacin dos o ms expresiones, proponiendo un valor a un
condicional.
Operador Descripcin

Ejemplo

=
Igual, permite comparar la igualdad entre dos expresiones.
<> O != Diferente, permite validar si una expresin es diferente a otra.

X=3
X<>5
X!=5
X<5
X >5
X <= 5

<
>
<=
>=

Menor, valida el estado menor de una expresin con respecto a otra.


Mayor, valida el estado mayor de una expresin con respecto a otra.
Menor o igual, valida el estado menor o igual de una expresin con respecto
a otra.
Mayor o igual, valida el estado mayor o igual de una expresin con respecto
a otra.

X >= 5

Tabla 6: Operadores relacionales

3.3.4. Operaciones - Resolucin de frmulas


En este punto empieza la resolucin de problemas a partir del uso de algoritmos, teniendo en
cuenta los elementos vistos anteriormente. Como primer caso vamos a solucionar el siguiente
problema.
Se requiere un programa que permita sumar dos nmeros.
Para solucionar este problema es necesario comprender el enunciado, continuando con el anlisis
de lo que se requiere, planteando como primera parte, cules son las entradas de su algoritmo?
Para este proceso se recomienda realizar la siguiente tabla.

ENTRADAS
Numero1

PROCESO

SALIDAS

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 13 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Numero2
Tabla 7: Definicin de entradas del sistema

Despus de este proceso se determinan las salidas continuando con el llenado de la tabla.
ENTRADAS

PROCESO

SALIDAS

Numero1

Suma (Resultado de la suma

Numero2

de dos nmeros)
Tabla 8: Definicin de salidas del sistema

Por ltimo, se requiere definir el proceso a realizar, completando la tabla


ENTRADAS

PROCESO

SALIDAS

Numero1

Realizar la suma entre los dos valores.

Suma (Resultado de la suma

Numero2

Suma<-Numero1 + Numero2

de dos nmeros)

Tabla 9: Definicin del proceso a ejecutar.

Despus de elaborar este anlisis usted puede determinar el proceso a realizar, para determinar el
algoritmo realice el diagrama de flujo.
Definicin de Variables

Proceso de suma

Captura de Valores.

Presentacin de Resultados

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 14 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Figura 5: Diagrama de flujo de algoritmo para la suma de dos nmeros.

Despus de elaborar el respectivo diagrama de flujo se procede con la codificacin en un


pseudolenguaje, definiendo de esta forma el conjunto de instrucciones a ejecutar.
Proceso Sumar
DefinirNumero1,Numero2,Suma Como Entero;
Leer Numero1;
Leer Numero2;
Suma<-Numero1+Numero2;
Escribir Suma;
FinProceso
Seudocdigo 1: Suma de dos nmeros

Para continuar con el proceso se deben realizar las pruebas de este algoritmo mediante la prueba
de escritorio, como se muestra a continuacin.

Prueba

Numero1

Numero2

Suma

-3

-1

-4

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 15 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Tabla 10: prueba de escritorio.

Con esto se termina el proceso despus de haber realizado las pruebas con diferentes datos y en
diferentes escenarios.

3.4.

Ejercicios Resueltos

Para resolver el siguiente ejercicio se requiere realizar nuevamente el proceso.


Se requiere un algoritmo que calcule la fuerza aplicada a un cuerpo
Se determina la frmula que aplica para la solucin de este caso.

Y se llena la tabla del anlisis.


ENTRADAS

PROCESO

SALIDAS

masa

Se realiza el proceso de solucin de la Fuerza

Aceleracin

frmula,

(Resultado

clculo de la formula)
Tabla 11: Llenado de la tabla de anlisis

A continuacin con el diagrama de flujo.

del

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Figura 6: Diagrama de Flujo para el clculo de la fuerza

Pgina 16 de 65

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 17 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Se determina el seudocdigo a partir del diagrama de flujo.


Proceso Calcula_Fuerza
Definir Masa, Aceleracion, Fuerza Como Real;
Leer Masa;
Leer Aceleracion;
Fuerza <- Masa * Aceleracion;
Escribir Fuerza;
FinProceso
Seudocdigo 2: Calculo de la fuerza

Y por ltimo, se realiza la prueba de escritorio determinando diferentes valores a presentar.


Prueba

Masa

Aceleracion

Fuerza

30

20

600

10

9.8

98

34

12

510

Tabla 12: Prueba de escritorio clculo de fuerza

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

3.5.

Pgina 18 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Ejercicios Propuestos
1. Realizar un programa que calcule el rea de:
a. Un tringulo.
b. Un crculo.
c. Un cuadrado.
d. Un paralelogramo.
e. Un hexgono.
2. Desarrollar un programa que calcule el volumen de:
a. Un cono.
b. Una pirmide
c. Un cilindro.
d. Una esfera.
e. Un cubo.
3. Disear un algoritmo que le permita saber en qu ao naci una persona si se digita la
edad actual de la persona.
4. Hacer un programa que calcule el inters simple de un prstamo bancario.
5. Una empresa requiere conocer las magnitudes de un circuito haciendo uso de la ley de
OHM. Formula su medicin o clculo.
a. El voltaje.
b. La Corriente.
c. La resistencia.
6. Realice un algoritmo que calcule la pendiente de una recta si se tiene como constante b
(intersecto con el eje Y) definida como constante.
7. Dada una cantidad en pesos, obtener la equivalencia en dlares, asumiendo que la unidad
cambiara es un dato desconocido.
8. Calcular el nuevo salario de un obrero si obtuvo un incremento del 25% sobre su salario
anterior

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

3.6.

Pgina 19 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

BIBLIOGRAFA.

Asciitable.com. (2010). Asciitable.com. Obtenido de http://www.asciitable.com/


Caro Pineda, S. (s.f.). Lgica de la Programacin y Algoritmos. Tunja: Universidad de Boyac.
Jeder, A., & Lpez, G. (2009). Analisis y diseo de algoritmos. Mxico: Alfaomega.
Knuth, D. E. (1969). The art of Computer Programing. Addison Wesley.
Mendez, A. (2013). Diseo de Algoritmos y su programacion en C. Mxico: Alfaomega.
Quispe Otazu, R. (Marzo de 2007). Computacin e infrmatica. Obtenido de Que es un
Algoritmo?: http://www.rodolfoquispe.org/blog/que-es-un-algoritmo.php
Scholl, P. C. (1988). Schmas algorithmiques fondamentaux: squences et itration. Universit
Joseph Fourier Institut grenoblois d'tudes informatiques.
Sznajdleder, P. (2012). Algoritmos a fondo con aplicaciones. Mxico: Alfaomega.
Universidad Nacional de Colombia. (s.f.). http://www.virtual.unal.edu.co/. Obtenido de Campus
Virtual Universidad Nacional de Colombia - Curso de Programacion de computadoras:
http://www.virtual.unal.edu.co/cursos/ingenieria/2001839/index.html

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

3.7.

Pgina 20 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

BIBLIOGRAFA DE APOYO

Caro Pineda, S. (s.f.). Lgica de la Programacin y Algoritmos. Tunja: Universidad de Boyac.


Jeder, A., & Lpez, G. (2009). Analisis y diseo de algoritmos. Mxico: Alfaomega.
Mendez, A. (2013). Diseo de Algoritmos y su programacion en C. Mxico: Alfaomega.
Sznajdleder, P. (2012). Algoritmos a fondo con aplicaciones. Mxico: Alfaomega.

3.8.

SITIOS WEB O URL DE CONSULTA

Universidad Nacional de Colombia. (s.f.). http://www.virtual.unal.edu.co/. Obtenido de Campus


Virtual Universidad Nacional de Colombia - Curso de Programacion de computadoras:
http://www.virtual.unal.edu.co/cursos/ingenieria/2001839/index.html
Quispe Otazu, R. (Marzo de 2007). Computacin e infrmatica. Obtenido de Que es un
Algoritmo?: http://www.rodolfoquispe.org/blog/que-es-un-algoritmo.php

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 21 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

4. UNIDAD 2 ESTRUCTURAS DE CONTROL

En esta unidad usted podr identificar las estructuras de control que le permitirn controlar las
instrucciones de su algoritmo, ya sean stos condicionales y de repeticin. Se recomienda que
preste mucha atencin a los procesos a realizar, para tener una concepcin mucho ms clara de
los referentes, adems se sugiere consultar constantemente la bibliografa de apoyo, y
complementar su formacin.

4.1.

Introduccin

Las estructuras de control se clasifican entre estructuras condicionales y repetitivas, a su vez


cada una se subdivide, dotando al desarrollador de mltiples herramientas para el desarrollo de
aplicativos.

Simples
Condicionales
Mltiples

Estructuras de control

Mientras
Repetitiva

Hasta
Para

Figura 7: Clasificacin de las estructuras de control

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 22 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

De acuerdo a figura 7, se evidencia como se clasifican estas estructuras de control. A


continuacin se explica el funcionamiento de cada una de ellas, presentando un pequeo
ejemplo, para esto se recomienda que use lo aprendido en la unidad anterior acerca del manejo
de variables y operadores.

4.1.1. Estructuras Condicionales


Las estructuras condicionales le permiten hacer bifurcaciones dentro de la lnea de instrucciones
de su algoritmo, por lo tanto usted puede realizar validaciones dentro de su programa y permitir
reaccionar de acuerdo a los resultados, es indispensable que tenga en cuenta los operadores
lgicos y relacionales5 dentro de estas estructuras.

4.1.1.1. Estructuras Condicionales Simples


Las estructuras condicionales simples permiten validar una expresin determinando su valor en
la tabla de verdad, de acuerdo al parmetro de dicha expresin.

Smbolo

Valores
Verdadero: Si la condicin se cumple
Falso: Si la condicin no se cumple
Tabla 13: Comportamiento bsico de condicional simple

Para demostrar el funcionamiento se mostrara un ejemplo simple, donde permita evaluar si el


valor digitado por el usuario es mayor que 5.

Revise la unidad 1 acerca de los operadores.

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

ENTRADAS
Numero

Pgina 23 de 65

PROCESO

SALIDAS

Se realiza la validacin si Numero es Verdadero


mayor que 5

Falso

Tabla 14: Anlisis para algoritmo de un nmero mayor que 5

A continuacin con el diagrama de flujo:

Figura 8: Diagrama de flujo de un nmero mayor que 5

Se determina el seudocdigo a partir del diagrama de flujo:


Proceso Condicional_1
Definir Numero1 Como Entero;
Leer Numero1;
Si (Numero1 > 5) Entonces
Escribir "Mayor";
Sino
Escribir "Menor o igual";
FinSi
FinProceso
Seudocdigo 3: Nmero mayor que 5

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 24 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Y por ltimo, la prueba de escritorio determinando diferentes resultados a presentar.


Prueba
1
2

Numero1
4
3

Mensaje
"Mayor"
"Menor o igual"

Tabla 15: Prueba de escritorio de un nmero mayor que 5

Observe que se solucion el problema conservando todos los elementos para la solucin de
algoritmos vistos en la unidad anterior, por lo tanto se recomienda que lo haga, esto le permitir
desarrollar su lgica de programacin al nivel deseado6.

4.1.1.2. Estructuras Condicionales Mltiples


En este caso los condicionales mltiples permiten la divisin de los caminos de su algoritmo en
ms de una ruta, debe tener en cuenta que la validacin se realiza sobre el valor de la variable a
condicionar, es decir, en este caso las expresiones se evalan nicamente por su valor numrico
y no el lgico.
Smbolo

Valores
1: Si El valor de la variable es 1
2: Si El valor de la variable es 2
.
.
.
n: Si El valor de la variable es n
Valor en caso que no se cumpla las condiciones

Tabla 16: Comportamiento bsico de condicional mltiple

Consulte las referencias para encontrar ms ejemplos.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 25 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Es preciso determinar que el comportamiento de esta estructura de control a pesar de ser muy til
con una gama alta de resultados, debe definir los posibles valores que puede tomar esta variable,
y el resultado en caso que no coincida con estos valores.
Para mostrar su funcionamiento de una mejor manera se presenta este ejemplo donde se valida
las diferentes opciones que puede digitar el usuario.7
ENTRADAS
Selector

PROCESO

Se realiza la validacin sobre que numero Selecciono 1


se digito
caso que sea 1 el valor
Selecciono 2
caso que sea 1 el valor
Selecciono 3
caso que sea 1 el valor
Selecciono
valor en el caso
valor sea diferente
planteados.
Tabla 17: Anlisis de condicional mltiple

A continuacin con el diagrama de flujo:

Figura 9: Diagrama de flujo condicional mltiple

SALIDAS

Esta opcin es muy til para el desarrollo de mens de seleccin.

en el
en el
en el
otro
que el
a los

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 26 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Se determina el seudocdigo a partir del diagrama de flujo.


Proceso Condicional_multiple
Definir Selector Como Entero;
Leer Selector;
Segun Selector Hacer
1:
Escribir "Selecciono
2:
Escribir "Selecciono
3:
Escribir "Selecciono
De Otro Modo:
Escribir "Selecciono
Fin Segun
FinProceso

1";
2";
3";
otra opcion";

Seudocdigo 4: Condicional mltiple

Y por ltimo, la prueba de escritorio al determinar diferentes resultados a presentar.


Prueba

Numero1

1
2
2
4

1
2
3
7

Mensaje
"Selecciono
"Selecciono
"Selecciono
"Selecciono otra

1"
2"
3"
opcion"

Tabla 18: Condicional mltiple

4.1.1.3. Condicionales anidados


El concepto de condicionales puede llegar a ser bastante complejo, pero su aplicacin es muy
sencilla, en efecto, consiste en la inclusin de un condicional dentro de una de las respuestas de
otro, por ejemplo, en el momento que usted se pregunta
Respuesta Afirmativa
P. Desayuno?
R. Si.
P. Qu desayuno?
R. Pan y caf.

Respuesta negativa
P. Desayuno?
R. No.
P. Por qu?
R. Se me haca tarde.

Tabla 19: Ejemplo Condicional anidado

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 27 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

En resumen, es un condicional que se deriva de otro ya sea que cumpla o no cumpla la condicin
del primero.
Para este caso se resolver un ejercicio con un grado de complejidad mayor. Tenga presente el
seguimiento a realizar, donde este algoritmo evala si un nmero es positivo y si es el caso
ejecuta la divisin. Este caso ser muy til en el momento que necesite validar la divisin por 0.
ENTRADAS
Dividendo
Divisor

PROCESO

SALIDAS

Se realiza si el divisor es mayor que "El cociente es Mayor


cero y posterior mente valida si el que 0, Cociente = " ,
Cociente
cociente es positivo
"El cociente es Menor
que 0, Cociente = " ,
Cociente
"No se puede realizar
la divisin por Cero "
Tabla 20: Anlisis condicional anidado

A continuacin con el diagrama de flujo:

Figura 10: Diagrama de flujo condicional anidado

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 28 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Se determina el seudocdigo a partir del diagrama de flujo.


Proceso Division
Definir Dividendo,Divisor, Cociente Como Entero;
Leer Dividendo,Divisor;
Si (Divisor!=0)
Cociente <- Dividendo / Divisor;
Si (Cociente > 0)
Escribir "El cociente es Mayor que 0, Cociente = " , Cociente;
Sino
Escribir "El cociente es Menor que 0, Cociente = " , Cociente;
FinSi
Sino
Escribir "La division por Cero no es vlida"
FinSi
FinProceso

Seudocdigo 5: Condicional anidado

Y por ltimo, la prueba de escritorio determinando diferentes resultados a presentar.


Prueba

Dividendo

Divisor

Cociente

Mensaje

-10

-5

Null

El cociente es
Mayor que 0,
Cociente = 3
El cociente es
Menor que 0,
Cociente = -5
La divisin por
Cero no es vlida

Tabla 21: Prueba de escritorio condicional anidado

4.1.2. Estructuras Repetitivas


Dentro de los problemas de algoritmos el caso ms frecuente que se presenta es la necesidad de
generar acciones repetitivas, por consiguiente, cada elemento dentro de esta estructura deber
repetirse un numero finito de veces (en algunos casos el programador puede considerar la
necesidad de establecer un ciclo infinito). Por lo tanto, se presentan 3 opciones bsicas para el

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 29 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

desarrollo de aplicaciones bajo cualquier lenguaje8, en consecuencia, es preciso presentarle estos


ciclos y mostrar ejemplos de su aplicacin, pero antes es preciso definir unos conceptos claves
que profundizan dentro del tema de variables y constantes.

4.1.2.1.

Acumuladores

Un acumulador es una variable que incrementa su valor de acuerdo a los parmetros que se le
asignen, es decir, a su valor actual se le adiciona un valor dentro de la lnea de instrucciones,
por ejemplo, una persona tiene $300.000 en su cuenta bancaria y se le hace una serie de
consignaciones de diferentes valores, en este caso el saldo de la cuenta bancaria asume el
comportamiento de un acumulador. En ejemplos posteriores este trmino quedara claro.

4.1.2.2.

Incrementadores y decrementadores

Estos elementos, son comportamientos que las variables toman dentro de un algoritmo,
incrementando o decrementando peridicamente y un valor constante, siendo esta la diferencia
principal entre un incremental y un acumulador, por ejemplo: la edad de una persona se
considera un incrementador, puesto que su valor se incrementa de uno en uno cada ao.

Por otra parte, estos dos conceptos son usados con mucha frecuencia en la solucin de
algoritmos, convirtindose en herramientas de uso comn dentro de los desarrolladores, as
mismo, permiten controlar las iteraciones y los valores procesados dentro del algoritmo.

Notacin formal para describir algoritmos o funciones que sern ejecutadas por un ordenador.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 30 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

4.1.2.3. Ciclo Mientras


El Ciclo Mientras trabaja ejecutando las instrucciones siempre y cuando se cumpla la
condicin de ingreso. En este caso se plantea una condicin para el ciclo que debe especificarse
de forma clara evitando ambigedades, y cumplir con los parmetros de las estructuras
condicionales, por ejemplo:
Mientras que, sea menor de 18 aos, debe responder ante sus padres
Observe que la frase mientras que, determina el comportamiento de la estructura repetitiva, el
fragmento sea menor de 18 aos implica la condicin que se debe cumplir, finalmente, debe
responder ante sus padres especifica la accin que ejecuta; bajo este ejemplo pueden
desarrollarse los algoritmos, para este caso, se realizar un algoritmo que permita la suma de los
10 primeros nmeros pares.
ENTRADAS
Null

PROCESO

SALIDAS

Se realiza el proceso de acumular los Acumulador (Resultado del


valores asignados y los incrementos suma de los 10 primeros
definidos.
nmeros pares)
Tabla 22: Anlisis de ciclo Mientras

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

A continuacin con el diagrama de flujo:

Figura 11: Diagrama de flujo ciclo Mientras

Se determina el seudocdigo a partir del diagrama de flujo:


Proceso Ciclo_mientras
Definir Acumulador, Iteracion Como Entero;
Mientras Iteraccion < 10 Hacer
Acumulador <- Acumulador + 2;
Iteracion <- Iteracion + 1;
Fin Mientras
Escribir Acumulador
FinProceso
Seudocdigo 6: Ciclo mientras

Pgina 31 de 65

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 32 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Y por ltimo, la prueba de escritorio. Para ello, se determinan diferentes valores a presentar.
Prueba

Iteracion

Acumulador

1
2
3
4
5
6
7
8
9
10
11

0
1
2
3
4
5
6
7
8
9
10

0
2
4
6
8
10
12
14
16
18

20

Tabla 23: Prueba de escritorio ciclo Mientras

4.1.2.4. Ciclo Repetir - Hasta


El Ciclo Hasta trabaja ejecutando las instrucciones hasta se cumpla la condicin de salida.
Teniendo en cuenta este modelo puede aplicar para este ejemplo:
Repetir, Tomar el jarabe, Hasta, Completar 10 dosis
En este caso el indicador Repetir Hasta determina el tipo de ciclo que se utiliza, adems, se
tiene en cuenta que se realiza el conjunto de instrucciones por lo menos una, ya que, la condicin
de salida se encuentra al final de la estructura. A continuacin se resolver el mismo caso del
algoritmo anterior para ejemplificar este tipo de iteraciones.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

A continuacin con el diagrama de flujo:

Figura 12: Diagrama de Flujo ciclo Repita-Hasta

Se determina el seudocdigo a partir del diagrama de flujo:


Proceso Ciclo_repetir
Definir Acumulador, Iteracion Como Entero;
Repetir
Acumulador <- Acumulador + 2
Iteracion<- Iteracion+1
Hasta Que (Iteracion = 10 )
Escribir Acumulador
FinProceso
Seudocdigo 7: Ciclo Repita-Hasta

Pgina 33 de 65

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 34 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Y por ltimo, la prueba de escritorio determinando diferentes valores a presentar.


Prueba

Iteracion

Acumulador

1
2
3
4
5
6
7
8
9
10

0
1
2
3
4
5
6
7
8
9

2
4
6
8
10
12
14
16
18

20

11

10

null

Tabla 24: Prueba de escritorio ciclo Repita-Hasta

4.1.2.5. Ciclo - Para


El Ciclo Para trabaja, repitiendo las instrucciones la cantidad determinada de veces que se
expresa en su implementacin. Aunque este ciclo es un poco ms complejo para explicar dentro
de una analoga con la vida real, su uso en la programacin facilita muchos procesos por
ejemplo:
Para que reparta entre los nios desde el primero, hasta que complete 10, de uno en uno.
Se observan los siguientes elementos, un punto de partida desde el primero,, as tambin la
condicin de parada y por ltimo el paso de uno en uno, es decir, como pasa a la siguiente
iteracin.
Usando el mismo ejemplo y para completar el uso del tercer tipo de ciclo, a continuacin se
repite el mismo proceso.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

A continuacin con el diagrama de flujo.

Figura 13: Diagrama de flujo ciclo Para

Se determina el seudocdigo a partir del diagrama de flujo.


Proceso Ciclo_repetir
Definir Acumulador, Iteracion Como Entero;
Para Iteracion<-1Hasta 10 Con Paso 1 Hacer
Acumulador<-Acumulador+2
Fin Para
Escribir Acumulador
FinProceso
Seudocdigo 8: Ciclo Para

Y por ltimo, la prueba de escritorio determinando diferentes valores a presentar.


Prueba
1
2
3
4
5
6
7
8
9
10

Iteraccion Acumulador
1
2
3
4
5
6
7
8
9
10

2
4
6
8
10
12
14
16
18

20

Tabla 25: Prueba de escritorio ciclo Para

Pgina 35 de 65

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

4.2.

Pgina 36 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Ejercicios Propuestos

1.

Un hombre desea saber cunto dinero se genera por concepto de intereses sobre la cantidad
que tiene en inversin en el banco. El decidir reinvertir los intereses siempre y cuando estos
excedan a $7000, y en ese caso desea saber cunto dinero tendr finalmente en su cuenta.

2.

En un almacn se hace un 20% de descuento a los clientes cuya compra supere los $1000
Cul ser la cantidad que pagara una persona por su compra?

3.

Una persona enferma, que pesa 70 kg, se encuentra en reposo y desea saber cuntas caloras
consume su cuerpo durante todo el tiempo que realice una misma actividad. Las actividades
que tiene permitido realizar son nicamente dormir o estar sentado en reposo. Los datos que
tiene son que estando dormido consume 1.08 caloras por minuto y estando sentado en
reposo consume 1.66 caloras por minuto.

4.

En un supermercado se hace una promocin, mediante la cual el cliente obtiene un


descuento dependiendo de un nmero que se escoge al azar. Si el numero escogido es menor
que 74 el descuento es del 15% sobre el total de la compra, si es mayor o igual a 74 el
descuento es del 20%. Calcular cunto dinero se le descuenta.

5.

Una empresa de bienes races ofrece casas de inters social, bajo las siguientes condiciones:
Si los ingresos del comprador son menores de $8000 o ms el enganche ser del 15% del
costo de la casa y el resto se distribuir en pagos mensuales, a pagar en diez aos. Si los
ingresos del comprador son menos de $8000 o ms el enganche ser del 30% del costo de la
casa y el resto se distribuir en pagos mensuales a pagar en 7 aos.
La empresa quiere obtener cunto debe pagar un comprador por concepto de enganche y
cunto por cada pago parcial? Calcule sus respectivos valores

6.

En una tienda de descuento se efecta una promocin en la cual se hace un descuento sobre
el valor de la compra total segn el color de la bolita que el cliente saque al pagar en caja. Si
la bolita es de color blanco no se le har descuento alguno, si es verde se le har un 10% de
descuento, si es amarilla un 25%, si es azul un 50% y si es roja un 100%. Determinar la
cantidad final que el cliente deber pagar por su compra. Se sabe que solo hay bolitas de los
colores mencionados

7. El dueo de una empresa desea planificar las decisiones financieras que tomar en el
siguiente ao. La manera de planificarlas depende de lo siguiente:

Si actualmente su capital se encuentra con saldo negativo, pedir un prstamo


bancario para que su nuevo saldo sea de $10 000. Si su capital tiene actualmente
un saldo positivo pedir un prstamo bancario para tener un nuevo saldo de
$20000, pero si su capital tiene un saldo superior a los $20000 no pedir ningn
prstamo.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 37 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Posteriormente repartir su presupuesto de la siguiente manera:


$5000 para equipo de cmputo.
$2000 para mobiliario.

Y el resto la mitad ser para la compra de insumos y la otra para otorgar


incentivos al personal.
Desplegar qu cantidades se destinaran para la compra de insumos e incentivos
al personal y, en caso de que fuera necesario, a cunto ascendera la cantidad que
se pedira al banco.

8. Suponga que se tiene un conjunto de calificaciones de un grupo de 40 alumnos. Realizar


un algoritmo para calcular la calificacin media y la calificacin ms baja de todo el
grupo.
9. Calcular e imprimir la tabla de multiplicar de un nmero cualquiera. Imprimir el
multiplicando, el multiplicador y el producto.
10. Al cerrar un expendio de naranjas, 15 clientes que an no han pagado recibirn un 15%
de descuento si compran ms de 10 kilos. Determinar cunto pagara cada cliente y cuanto
percibir la tienda por esas compras.
11. Un entrenador le ha propuesto a un atleta recorrer una ruta de cinco kilmetros durante
10 das, para determinar si es apto para la prueba de 5 Kilmetros o debe buscar otra
especialidad. Para considerarlo apto debe cumplir por lo menos una de las siguientes
condiciones:
Que en ninguna de las pruebas haga un tiempo mayor a 16 minutos.
Que al menos en una de las pruebas realice un tiempo mayor a 16 minutos.
Que su promedio de tiempos sea menor o igual a 15 minutos.
12. Cinco miembros de un club contra la obesidad desean saber cunto han bajado o subido
de peso desde la ltima vez que se reunieron. Para esto se debe realizar un ritual de pesaje
en donde cada uno se pesa en diez bsculas distintas para as tener el promedio ms
exacto de su peso. Si existe diferencia positiva entre este promedio de peso y el peso de la
ltima vez que se reunieron, significa que subieron de peso. Pero si la diferencia es
negativa, significa que bajaron. Lo que el problema requiere es que por cada persona se
imprima un letrero que diga: SUBIO o BAJO y la cantidad de kilos que subi o bajo
de peso.
13. En un supermercado, un ama de casa pone en su carrito los artculos que va tomando de
los estantes. La seora quiere asegurarse de que el cajero le cobre bien lo que ella ha
comprado, por lo que cada vez que toma un artculo anota su precio junto con la cantidad
de artculos iguales que ha tomado y determina cunto dinero gastara en ese artculo; a

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 38 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

esto le suma lo que ira gastando en los dems artculos, hasta que decide que ya tomo
todo lo que necesitaba .Aydale a esta seora a obtener el total de sus compras.
14. Determinar la cantidad semanal de dinero que recibir cada uno de los n obreros de una
empresa. Se sabe que cuando las horas que trabajo un obrero exceden de 40, el resto se
convierte en horas extras que se pagan al doble de una hora normal, cuando no exceden
de 8; cuando las horas extras exceden de 8 se pagan las primeras 8 al doble de lo que se
paga por una hora normal y el resto al triple.
15. Leer 50 calificaciones de un grupo de alumnos. Calcule y escriba el porcentaje de
reprobados. Tomando en cuenta que la calificacin mnima aprobatoria es de 3.5.
16. Suponga que tiene una tienda y desea registrar sus ventas por medio de una computadora.
Disee un pseudocdigo que lea por cada cliente:
a. El monto de la venta.
b. Calcule e imprima el IVA.
c. Calcule e imprima el total a pagar.
d. Lea la cantidad con que paga el cliente.
e. Calcule e imprime el cambio.
Al final del da deber imprimir la cantidad de dinero que debe haber en la caja.
17. Un grupo de 100 estudiantes presentan un examen de Fsica. Disee un diagrama que lea
por cada estudiante la calificacin obtenida, calcule e imprima:
a. La cantidad de estudiantes que obtuvieron una calificacin menor a 3.0.
b. La cantidad de estudiantes que obtuvieron una calificacin de 3.5 o ms pero
menor que 4.0.
c. La cantidad de estudiantes que obtuvieron una calificacin de 4.0 o ms pero
menor que 4.5.
d. La cantidad de estudiantes que obtuvieron una calificacin de 4.5 o ms.
18. Calcule la suma de los trminos de la serie FIBONACCI cuyos valores se encuentran
entre100 y 10,000.
19. Una pizzera, vende sus pizzas en tres tamaos:
Pequea (15 cm. De dimetro).
Mediana (20 cm. De dimetro).
Grande (30 cm. De dimetro).
Una pizza puede ser sencilla (con slo salsa y carne), o con ingredientes extras, tales como
pepinillos, championes o cebollas. Los propietarios desean desarrollar un programa que

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 39 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

calcule el precio de venta de una pizza, dndole el tamao y el nmero de ingredientes extras.
El precio de venta ser 1.5 veces el costo total, que viene determinado por el rea de la pizza,
ms el nmero de ingredientes. En particular el costo total se calcula sumando:
a. Un costo fijo de preparacin
b. Un costo base variable que es proporcional al tamao de la pizza
c. Un costo adicional por cada ingrediente extra. Por simplicidad se supone que
cada ingrediente extra tiene el mismo costo por unidad de rea.
20. Un avin que viaja 800 Km/h. Dispara un proyectil auto impulsado, en el momento del
disparo, el avin hace un giro de 90 y acelera a 20 metros/seg2. El proyectil sigue su
curso, acelerando a 10 metros./seg2. Disee un pseudocdigo que escriba cada segundo,
la distancia que separa al avin del proyectil, hasta que estn a 10,000 metros o ms.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

4.3.

Pgina 40 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

BIBLIOGRAFA

Caro Pineda, S. (2003). Lgica de la Programacin y Algoritmos. Tunja: Universidad de Boyac.


Cueva Lovelle, J. (1998). Conceptos Bsicos de procesadores de lenguaje. Oviedo: Servitec.
Mndez, A. (2013). Diseo de Algoritmos y su programacin en C. Mxico: Alfaomega.
Quispe Otazu, R. (Marzo de 2007). Computacin e informtica. Obtenido de Que es un
Algoritmo?: http://www.rodolfoquispe.org/blog/que-es-un-algoritmo.php
Sznajdleder, P. (2012). Algoritmos a fondo con aplicaciones. Mxico: Alfaomega.
Universidad Nacional de Colombia. (s.f.). http://www.virtual.unal.edu.co/. Obtenido de Campus
Virtual Universidad Nacional de Colombia - Curso de Programacin de computadoras:
http://www.virtual.unal.edu.co/cursos/ingenieria/2001839/index.html

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

4.4.

Pgina 41 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

BIBLIOGRAFA DE APOYO

Caro Pineda, S. (s.f.). Lgica de la Programacin y Algoritmos. Tunja: Universidad de Boyac.


Jeder, A., & Lpez, G. (2009). Analisis y diseo de algoritmos. Mxico: Alfaomega.
Mendez, A. (2013). Diseo de Algoritmos y su programacion en C. Mxico: Alfaomega.
Sznajdleder, P. (2012). Algoritmos a fondo con aplicaciones. Mxico: Alfaomega.

4.5.

SITIOS WEB O URL DE CONSULTA

Universidad Nacional de Colombia. (s.f.). http://www.virtual.unal.edu.co/. Obtenido de Campus


Virtual Universidad Nacional de Colombia - Curso de Programacion de computadoras:
http://www.virtual.unal.edu.co/cursos/ingenieria/2001839/index.html
Quispe Otazu, R. (Marzo de 2007). Computacin e infrmatica. Obtenido de Que es un
Algoritmo?: http://www.rodolfoquispe.org/blog/que-es-un-algoritmo.php

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 42 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

5. UNIDAD 3 COLECCIONES

En esta unidad usted podr identificar las estructuras de almacenamiento en memoria esttica,
este es el momento en que usted entender los elementos de almacenamiento denominados
arreglos, estos pueden ser unidimensionales como los vectores o multidimensionales como las
matrices o tries.

5.1.

Arreglos

Un Array, en ingls, (matriz, arreglo o vector) es un conjunto finito y ordenado de elementos


homogneos. La propiedad ordenado significa que el elemento primero, segundo, tercero,,
ensimo de un array 9 puede ser identificado. Agrega que los elementos de un arreglo son
homogneos, es decir, del mismo tipo de datos. Un array puede estar compuesto de todos sus
elementos de tipo cadena, otro puede tener todos sus elementos de tipo entero, etc. Los arrays se
conocen como matrices en matemticas, y tablas en clculos financieros(Joyanes Aguilar, 2003).

Por consiguiente, un arreglo o array se presenta en la programacin como una coleccin, de


elementos del mismo tipo de datos, por ejemplo, un vector de estudiantes, donde el tipo de datos
principal es estudiante, con fines de aprendizaje se trabajara con tipos de datos primitivos que le
permitirn realizar las operaciones bsicas de estas estructuras10.

Array: arreglo o coleccin de elementos del mismo tipo.

10

Las operaciones bsicas de Arreglos son recorrido, llenado, bsqueda, ordenamiento, eliminacin y verificacin

de existencia.

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 43 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

5.1.1. Arreglos unidimensionales


Se denominan comnmente como vectores, estos se caracterizan por agrupar una cantidad
definida de elementos del mismo tipo. Su utilidad se manifiesta en el manejo de colecciones, que
ayudan a mantener toda la informacin en un solo elemento que permite almacenar muchos
elementos similares. Por ejemplo, un tren puede ser considerado un vector ya que permite alojar
a muchas personas que tienen el mismo propsito dentro de su estructura.

450 200
Vector en
posicin 0

la

350
Vector en la
posicin N-1

Figura 14: Vector de enteros

Para continuar con este caso, TODOS los Arreglos ya sean unidimensionales o
multidimensionales, cuentan con los siguientes elementos:

Longitud (n): Es la cantidad de elementos con las que cuenta un arreglo


Tipo de Dato: Es el tipo de dato al que pertenece ya sea un tipo primitivo 11o un tipo
de dato abstracto12
ndice: Es el indicador de posicin de los datos se manejan desde 0 hasta n-1 siendo n
la longitud.
Dimensiones: Se refiere a la cantidad de dimensiones con las que cuenta el arreglo en
caso de los vectores es de 1, matrices 2 tries 3.

11

Tipos de datos primitivos son nmeros o texto

12

Tipo de dato abstracto son combinaciones de tipos primitivos y se conjugan en una estructura o clase.

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 44 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Por ejemplo como meter diez vacas en 9 cajones, para muchas personas este caso puede ser algo
fastidioso, pero consiste en una forma prctica de apreciar sus caractersticas y funcionamiento.
D

La longitud de este vector es 9, el tipo de dato es carcter, es de una sola dimensin y el ndice
permite recorrer este vector y realizar las operaciones requeridas.
Algortmicamente los vectores se definen especificando el nombre la longitud y el tipo de dato,
es indispensable que se declare el vector, puesto que los lenguajes de programacin tienen su
forma propia para definirlos, en este caso se realiza de la siguiente forma:

Dimension Vector[<<Longitud>>]

Y se calculan las operaciones bsicas de vectores que se muestran a continuacin.

5.1.1.1.

Recorrido de un vector

Este procedimiento es el ms simple dentro de los vectores, pero es fundamental para los dems
procesos, y su algoritmo puede describir dos movimientos. El primero, describe una trayectoria
incremental, y el segundo, una decremental, es decir, puede recorrer el vector de adelante hacia
atrs o de atrs hacia adelante.
ProcesoVectores
Dimension Vector[5]
Mientras i < 5
i<-i+1
FinMientras
FinProceso

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 45 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Tabla 26: Algoritmo de recorrido incremental de un vector

ProcesoVectores
Definir i Como Entero
i<-5
Dimension Vector[5]
Mientras i > 0
i<-i-1
FinMientras
FinProceso
Tabla 27: Algoritmo de recorrido decremental de un vector

Simplemente se realiz un recorrido sin hacer ninguna operacin adicional, estas operaciones se
tratan ms adelante.

5.1.1.2.

Llenado de un vector

En este proceso se debe tener en cuenta el proceso de recorrido, puesto que se utiliza para
llenarlo, en todos los arreglos se llenen uno a uno de los elementos del vector de la siguiente
forma: Vector[i]<- <<Valor a asignar>>
A continuacin se muestra un ejemplo de llenado de un vector.
ProcesoVectores
Dimension Vector[5]
Mientras i < 5
Vector[i]<-i+1
i<-i+1
FinMientras
FinProceso
Tabla 28: Llenado de un vector

El resultado de este procedimiento ser el siguiente

Vector

ndices

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 46 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Seudocdigo 9:Vector Lleno segn el algoritmo

El algoritmo muestra que se llena el vector con el nmero del ndice + 1. Por lo tanto, en la
posicin 0 se almacena el nmero 1, puede llenar el vector con datos que se pidan por teclado,
es la forma en que se presenta en algoritmos comnmente utilizados.
ProcesoVectores
Dimension Vector[5]
Mientras i < 5
Leer Vector[i]
i<-i+1
FinMientras
FinProceso
Seudocdigo 10: Llenado de vector con datos desde teclado

5.1.1.3.

Bsqueda de un vector

Este procedimiento es muy til, sobretodo en el caso de verificar la existencia de un elemento


dentro del vector o si existe un valor en una posicin determinada.
Proceso Vectores
Dimension Vector[5]
Definir encontrado,i como Entero
encontrado = 0
Leer elemento
Mientras i < 5 Y encontrado!= 1
Si Vector[i] = elemento Entonces
encontrado=1
sino
i<-i+1
FinSi
FinMientras
FinProceso
Seudocdigo 11: Proceso de bsqueda de un elemento en un vector

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 47 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Para ejecutar este algoritmo el vector debe ser llenado previamente, y buscar un elemento
digitado por teclado, es decir, todo el vector debe contener informacin almacenada, para
realizar el proceso de bsqueda.

5.1.1.4.

Ordenamiento de un vector

Para el ordenamiento de vectores se encuentran definidos una serie de algoritmos cuyo estudio
ha sido bastante extenso, determinando las mejores formas para ser incluidos dentro del
desarrollo de software.13

5.1.1.4.1. Mtodo de burbuja


Es el ms simple de todos. Es el que compara todos con todos, generando comparaciones extras.
Por ejemplo, no tiene sentido que se compare consigo mismo o que se compare con los valores
anteriores a l, ya que supuestamente, ya estn ordenados.

13

Ver ms en http://artemisa.unicauca.edu.co/~nediaz/EDDI/cap03.htm

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 48 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

SubProceso llenar ( Vector )


Para x <- 1Hasta 5 Con Paso 1
Vector[x] <- azar(100)
FinPara
Fin SubProceso
Proceso Vectores
Dimension Vector[5]
llenar(Vector)
Para i<-1 Hasta 5 Con Paso 1 Hacer
Para j<-1 Hasta 4 Con Paso 1 Hacer
Si Vector[j] > Vector[j+i]Entonces
Temp <- Vector[j]
Vector[j]= Vector[j+1]
Vector[j+1]<- Temp
FinSi
Fin Para
Fin Para
FinProceso
Seudocdigo 12: Ordenamiento por mtodo de la burbuja

5.1.2. Arreglos multidimensionales.


Esta clase de arreglo permite las colecciones mltiples, su aplicacin se evidencia en las
colecciones de tipo registro, permitiendo as, manejar colecciones de objetos reales, en las
colecciones multidimensionales se debe tener en cuenta la cantidad de subndices que se utilizan,
de esta forma se determina la cantidad de dimensiones de este arreglo, por ejemplo una matriz se
considera un arreglo de NxN, un arreglo tridimensional se plantea de NxNxN y as
sucesivamente, hasta que se cumpla con los parmetros requeridos.
Por otra parte debe considerar que los subndices permiten las acciones de recorrido, llenado y
bsqueda dentro del arreglo.

Cdigo: GAFR-018

GESTIN ACADMICA

Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 49 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Dimension Matriz[3,3];
Seudocdigo 13: Definicin de un vector

Grficamente un arreglo multidimensional puede asemejarse a un tablero de ajedrez


H
G
F
E
D
C
B
A
1

Figura 15: Ejemplo tablero de ajedrez

El tablero de ajedrez muestra filas, columnas y celdas perfectamente codificadas, este tablero
presenta una longitud de 8 X 8, dos dimensiones y el tipo de dato es un repositorio para piezas de
ajedrez, del mismo modo, cada celda se encuentra codificada con letras (A-H) y nmeros (1-8),
formando la identificacin de cada celda de esta forma A1 sera la primera casilla negra de
izquierda a derecha y de abajo a arriba as sucesivamente.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 50 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

Sobre estos arreglos se ejecutan las mismas acciones bsicas de todos los arreglos a continuacin
se muestra el algoritmo de recorrido de un vector,
Proceso matrices
Dimension Matriz[3,3];
Para i<-1 Hasta 3 Hacer
Para j<-1 Hasta 3 Hacer
FinPara
FinPara
FinProceso
Seudocdigo 14: Recorrido de un matriz

En este algoritmo se evidencia un ciclo anidado que permite recorrer primero cada una de las
celdas de una fila, y luego pasar a la siguiente repitiendo el proceso, esta accin suele ser la ms
utilizada en el trabajo con arrays bidimensionales, por ejemplo, llenar un array utiliza los
principios de esta funcin complementando con la asignacin del valor dentro del cdigo fuente.
Proceso matrices
Dimension Matriz[3,3];
Para i<-1 Hasta 3 Hacer
Para j<-1 Hasta 3 Hacer
matriz[i,j] <- i*j
FinPara
FinPara
FinProceso
Seudocdigo 15: Llenar matriz

5.1.3. Ejercicios Propuestos


1.

Consultar sobre los mtodos de ordenamiento, (seleccin, insercin, por capas, QuickShort)

2.

Realice un programa que le permita almacenar los datos en un vector, y sume sus valores.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 51 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

3.

Una firma consultora de estadstica necesita un algoritmo para calcular, la media, moda,
mediana, y medidas de dispersin en una coleccin de 100 elementos, realice un problema
que permita atender este caso.

4.

Llenar un vector de 20 elementos, imprimir la posicin y el valor del elemento mayor


almacenado en el vector. Suponga que todos los elementos del vector son diferentes.

5.

Se tienen almacenados en la memoria dos vectores M y N de cien elementos cada uno.


Hacer un algoritmo que escriba la palabra Iguales si ambos vectores son iguales y,
Diferentes si no lo son. Sern iguales cuando en la misma posicin de ambos vectores se
tenga el mismo valor para todos los elementos.

6.

Disee un algoritmo que lea dos vectores A y B de 20 elementos cada uno y multiplique el
primer elemento de A con el ltimo elemento de B y, luego el segundo elemento de A por el
diecinueveavo elemento de B y, as sucesivamente hasta llegar al veinteavo elemento de A
por el primer elemento de B. El resultado de la multiplicacin almacenarlo en un vector C.

7.

Disee un algoritmo que almacene en un vector llamado FIB [100] los 100 primeros
nmeros de la serie Fibonacci.

8.

Se tiene el vector A con 100 elementos almacenados. Disee un algoritmo que escriba SI
si el vector esta ordenado ascendentemente o NO si el vector no est ordenado, en el caso
de estar desordenado, ordenarlo.

9.

Almacenar 300 nmeros en un vector, imprimir cuantos son ceros, cuntos son negativos,
cuantos positivos. Imprimir adems la suma de los negativos y la suma de los positivos.

10. Realice un programa que calcule el producto escalar de vectores.


11. Construir un mdulo para quitar los elementos repetidos de un vector repetidos de un vector
original, guardando el resultado en un vector destino.
12. Una Compaa requiere el clculo de los diferentes valores para la nmina de n cantidad de
personas. Realice un algoritmo que le permita efectuar este clculo. Y muestre los valores de
cada persona ingresando nicamente el valor del salario, horas extras, horas extras
nocturnas.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

Pgina 52 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

13. Realice un algoritmo que permita buscar cul es el nmero mayor el menor y el medio
dentro de un vector de 20 posiciones.
14. Disee un algoritmo que convierta nmeros decimales a binario.
15. Disee un algoritmo que convierta nmeros.

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

5.2.

Pgina 53 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

BIBLIOGRAFA

Caro Pineda, S. (s.f.). Lgica de la Programacin y Algoritmos. Tunja: Universidad de Boyac.


Cueva Lovelle, J. (1998). Conceptos Bsicos de procesadores de lenguaje. Oviedo: Servitec.
Jeder, A., & Lpez, G. (2009). Anlisis y diseo de algoritmos. Mxico: Alfaomega.
Joyanes Aguilar, L. (2003). Fundamentos de programacin. Espaa: Mc Graw Hill. .
Mendez, A. (2013). Diseo de Algoritmos y su programacin en C. Mxico: Alfaomega.
Sznajdleder, P. (2012). Algoritmos a fondo con aplicaciones. Mxico: Alfaomega.
Universidad Nacional de Colombia. (s.f.). http://www.virtual.unal.edu.co/. Obtenido de Campus
Virtual Universidad Nacional de Colombia - Curso de Programacin de computadoras:
http://www.virtual.unal.edu.co/cursos/ingenieria/2001839/index.html

GESTIN ACADMICA

Cdigo: GAFR-018
Versin: 01

MODULO DE APRENDIZAJE
Fecha: 26-10-2013

MODALIDAD A DISTANCIA
Cdigo SNIES 3817.

5.3.

Pgina 54 de 65

Resolucin No. 6344 del 17 de Octubre de 2006. MEN.

BIBLIOGRAFA DE APOYO.

Caro Pineda, S. (s.f.). Lgica de la Programacin y Algoritmos. Tunja: Universidad de Boyac.


Jeder, A., & Lpez, G. (2009). Anlisis y diseo de algoritmos. Mxico: Alfaomega.
Joyanes Aguilar, L. (2003). Fundamentos de programacin. Espaa: Mc Graw Hill. .
Lee, R. C. T. (2007). Introduccin al diseo y anlisis de algoritmos: un enfoque estratgico.
Mendez, A. (2013). Diseo de Algoritmos y su programacin en C. Mxico: Alfaomega.
Sznajdleder, P. (2012). Algoritmos a fondo con aplicaciones. Mxico: Alfaomega.

5.4.

SITIOS WEB O URL DE CONSULTA

Asciitable.com. (2010). Asciitable.com. Obtenido de http://www.asciitable.com/


Daz, N. (2005). Universidad del Cauca. Obtenido de
http://artemisa.unicauca.edu.co/~nediaz/EDDI/cap03.htm
Quispe Otazu, R. (Marzo de 2007). Computacin e informtica. Obtenido de Que es un
Algoritmo?: http://www.rodolfoquispe.org/blog/que-es-un-algoritmo.php

Вам также может понравиться