Está en la página 1de 27

INTRODUCCIN A LA ALGORITMIA

Estructura de contenidos

INTRODUCCIN........................................................................... 3

1. CONCEPTO DE ALGORITMOS...................................................... 3

2. UN POCO DE HISTORIA............................................................. 3

3. RESOLUCIN DE PROBLEMAS CON ALGORITMOS.......................... 4

4. SOLUCIN DE PROBLEMAS CON DIAGRAMAS DE FLUJO Y LENGUAJE


NATURAL (SEUDOCDIGO)............................................................ 14

5. ESTRUCTURAS ALGORTMICAS O DE PROGRAMACION................... 18

FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje


Introduccin a la Algoritmia

INTRODUCCIN A LA ALGORITMIA
Mapa conceptual

2
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

INTRODUCCIN

Nuestro actuar como personas se basa en obedecer por medio de ordenes


Secuenciales y lgicas a nuestro cerebro; hoy en da un computador
realiza tareas y maneja datos obedeciendo secuencias de pasos lgicos
para lo cual ha sido programado a travs de algoritmos, los cuales permiten
solucionar problemas por medio de la escritura secuencial (paso a paso)
de lenguaje natural y organizado, para luego llevarlos a un computador
mediante un lenguaje de programacin.

Es muy importante que usted como aprendiz logre desarrollar y despertar


su mentalidad algortmica, ya que durante todo su proceso estar inmerso
en aprender a solucionar problemas durante la etapa lectiva y esto se
logra por medio del diseo, creacin e implementacin de un algoritmo.

1. CONCEPTO DE ALGORITMOS

Un algoritmo se puede definir como un conjunto de instrucciones que


conducen a la solucin de un problema determinado, las cuales deben
estar relacionadas lgica y ordenadamente.

2 UN POCO DE HISTORIA

Los algoritmos fueron creados con la necesidad de resolver problemas


matemticos, sus inicios se dan con la creacin de las reglas de sumar,
multiplicar y dividir nmeros decimales (Mohammed al-Khowarizmi-
matemtico persa), de ah nace el nombre de
la Algoritmo, Su apellido fue traducido al latn
como Algorismus y posteriormente paso al
espaol como Algoritmo; ms adelante Euclides,
gran matemtico griego utilizo algoritmos
cuando invento el mtodo para encontrar el
mximo comn divisor de dos nmeros; y por
ltimo se puede decir que el gran padre de la
algoritmia es Niklaus Wirth el cual tuvo el gran
invento de Pascal.

Los algoritmos fueron creados con el fin de


utilizarlos para resolver problemas, para luego
llevarlos a un computador mediante un lenguaje

3
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

de programacin; para realizar un algoritmo se debe establecer una


metodologa de desarrollo, una de estas es la llamada resolucin de
problemas, la cual permite realizar un diseo organizado del algoritmo.

3 RESOLUCIN DE PROBLEMAS CON ALGORITMOS

Para solucionar un problema mediante un algoritmo es necesario seguir


un orden, uno de los primeros pasos es el diseo previo de un algoritmo,
con la resolucin de problemas podemos seguir este orden de la siguiente
manera:

a. A
 nalizar el problema (entender el problema)

b. D
 isear el algoritmo: En este paso se describe la secuencia ordenada
de pasos que conduce a la solucin del problema citado (diagrama de
flujo o seudocdigo).

c. E
 xpresar el algoritmo: el algoritmo se debe expresar como un programa
en un lenguaje de programacin adecuado. (Fase de codificacin.)

d. E
 jecucin y validacin: Se pone en ejecucin el programa realizado en
un computador.

Analizar
el problema

Depurar el Disear un
problema algoritmo

Traducir el
algoritmo

4
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

3.1 Analizar el problema

La finalidad como ya se ha mencionado de un algoritmo es resolver un


problema, lo primero y esencial es analizar el problema para lograr un
entendimiento claro

Formular el
problema

Procesos Resultados
necesarios esperados

Datos
Restricciones
disponibles

Reformular el problema: Si el problema que se ha planteado no se


encuentra bien formulado, redactado o no se entiende al momento de
leerse, debe reformularlo de tal manera que usted lo entienda y tenga
claro la situacin problema a solucionar).

Resultados Esperados: Debe especificar, describir y/o escribir los


resultados que espera, por ejemplo (cul es el producto final que se quiere
tener para dar solucin al problema, cual es la informacin a la que se
necesita llegar, que se espera del problema citado)

Datos Disponibles: Identificar la informacin disponible se resuelve


hacindose las siguientes preguntas: que informacin es importante o
relevante para solucionar el problema? Cules son los datos de entrada?,
cual es la incgnita?, que informacin me falta para resolver el problema?,

5
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

es decir todos los datos que tengo disponibles que me permitan solucionar
el problemas.

Restricciones: Determina las condiciones que plantea el problema para


lograr el resultado, lo que est permitido, lo prohibido.

Procesos necesarios: En esta fase debe definir los procesos para poder
convertir la informacin disponible, en resultados esperados que den
solucin al problema ya que se determinan los procesos que se necesitan,
las formulas a utilizar y el orden de lo que se debe realizar.

Ejemplo 1

Carlos Andrs, se encuentra ahorrando para comprar una patineta que vale
55.000 pesos. Su pap le ha dado para sus gastos 5.000 pesos durante
7 semanas. Por lavar el auto de su to tres veces recibi 8.000 pesos. Su
hermano Juan Antonio gan 10.000 pesos por hacer los mandados de su
mam y 4.000 por sacar a pasear el perro. Carlos Andrs tiene ahorrado
el dinero suficiente para comprar la patineta o an le falta?

Formular el problema: Ya se encuentra claramente planteado, pero si


no entiende la redaccin puede redactarlo a su manera, hasta es posible
realizar un resumen de lo planteado.

Resultados esperados: Saber si Carlos Andrs tiene o no tiene ahorrado


el dinero para comprar su patineta, la cual cuesta 55.000 pesos.

Datos disponibles: Los ingresos de Carlos Andrs 5.000 pesos por


7semanas + 8.000 pesos, los datos irrelevantes serian: Los 10.000 y
4.000 pesos qu gan el hermano ya que no aportan informacin para la
solucin de este problema y se pueden omitir.

Restricciones: no se encuentra ninguna.

Procesos: Calcular el valor ahorrado por Carlos


para saber si le alcanza para comprar la patineta.

ValorAhorrado = 5000 + 8000 = 13.000

Es decir no le alcanza para la patineta.

6
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

Ejemplo 2

Se necesita calcular el rea de un tringulo rectngulo cuya Base mide 3


cm, la Altura 4 cm y la Hipotenusa 5 cm.

Formular el problema: Ya se encuentra claramente planteado, pero si


no entiende la redaccin puede redactarlo a su manera, hasta es posible
realizar un resumen de lo planteado.

Resultados esperados: El rea de un tringulo rectngulo.

Datos disponibles: Base, Altura, Hipotenusa, tipo de tringulo.

La incgnita es el rea y todos los valores son constantes. El valor de la


hipotenusa se puede omitir.

El aprendiz debe preguntarse si sus conocimientos actuales de matemticas


le permiten resolver este problema; de no ser as, debe plantear una
estrategia para obtener los conocimientos requeridos.

Determinar las restricciones: Utilizar las medidas dadas, y saber que


se debe aplicar la frmula del rea de un tringulo rectngulo.

Procesos necesarios: Guardar en dos variables los valores de Base


y Altura; Guardar en una constante el divisor 2; aplicar la frmula
rea=base*altura/2; comunicar el resultado (rea).

m
5c 3 cm

4 cm

7
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

3.2 Diseo de un algoritmo

El diseo de un algoritmo se puede realizar mediante un diagrama


de flujo o mediante seudocdigo. Los algoritmos tienen las siguientes
caractersticas

Caractersticas de los algoritmos

Un algoritmo debe:

1. Ser preciso e indicar el orden de realizacin de cada paso.

2. Estar definido. Si se sigue un algoritmo dos veces, se debe obtener


el mismo resultado cada vez.

3. Ser finito. Si se sigue un algoritmo, se debe terminar en algn


momento.

Un algoritmo de contener como mnimo las siguientes partes:

Entrada
Proceso
Salida.
Por ejemplo para realizar una receta de comida por medio de un algoritmo,
cada parte podr estar determinada as:

Entrada: ingredientes y utensilios empleados.


Proceso: elaboracin de la receta en la cocina.
Salida: terminacin del plato (por ejemplo, cordero).

3.2.1 Diseo de un algoritmo mediante diagrama de flujo

Los algoritmos pueden representarte de varias maneras, entre ellas est


la representacin de diagramas de flujo. La representacin en diagramas
de flujo tiene como objetivo seguir paso a paso la solucin de un problema
mediante grficos

8
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

3.2.1.1 Definicin Diagrama de flujo

Un diagrama de flujo es un conjunto secuencial de figuras geomtricas


standard conectadas lgicamente entre s para dar solucin a un problema
especfico, cada figura tiene un significado propio .

La secuencia lgica se da por medio de flechas llamadas lneas de flujo


que indican el flujo lgico del algoritmo. Al ser un diagrama grafico facilita
la visin de la ejecucin del algoritmo.

La simbologa utilizada en estos diagramas ha sido estandarizada por las


organizaciones ANSI(American National Institute) y por ISO (International
Estndar Organization).

Existen herramientas software que permiten realizar los grficos


mencionados anteriormente, una de las ms utilizadas es DFD, el cual es
de fcil uso y libre acceso en la web, algunos beneficios de utilizar estos
son:

9
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

Almacenar digitalmente los diagramas construidos.

Introducirles modificaciones fcilmente.

I mprimir copias de los diagramas para compartirlos con compaeros


o documentar sus trabajos.

 xportarlos en varios formatos grficos para utilizarlos en otros


E
programas.

Alinear y organizar los smbolos automticamente

Simbologa Estndar de un diagrama de flujo

Para iniciar y terminar un diagrama

Para representar un proceso

Para toma de decisiones:


utilizado tambin en estructuras cclicas

10
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

Para representar entrada de datos

Para representar salida de datos

Flechas conectoras

Iteracin: Indica
que una instruccin
o un grupo de
instrucciones deben
ejecutarse repetida-
mente.

11
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

3.2.1.2 Reglas para la elaboracin de un diagrama de flujo:

1. L
 os diagramas se deben realizar de arriba hacia abajo y de izquierda
hacia derecha.

2. Los smbolos de inicio y final deben aparecer solo una vez

3. L
 a ejecucin de un programa siempre empieza en la parte superior del
programa.

4. La direccin del flujo se debe representar por medio de flechas.

5. T
 odas las lneas de flujo deben llegar a un smbolo o a otra lnea.

6. S
 e deben inicializar las variables que se utilicen o permitir la asignacin
de valores mediante la consulta a un usuario.

3.2.2 Diseo de un algoritmo mediante seudocdigo

La representacin de seudocdigo sigue paso a paso la solucin de


un problema con lenguaje natural, pero recuerde que debe realizar la
metodologa resolucin de problemas para poder iniciar su algoritmo con
seudocdigo. Podra recordarse la imagen de resolucin de problemas
explicada anteriormente.

Paso 1: Inicio
Paso 2: .
Paso 3
Paso nFin

Ejemplo1:

Se retoma el ejemplo de Carlos Andrs para llevarlo en forma de algoritmo:

Carlos Andrs, se encuentra ahorrando para comprar una patineta que vale
55.000 pesos. Su pap le ha dado para sus gastos 5.000 pesos durante
7 semanas. Por lavar el auto de su to tres veces recibi 8.000 pesos. Su
hermano Juan Antonio gan 10.000 pesos por hacer los mandados de su
mam y 4.000 por sacar a pasear el perro. Carlos Andrs tiene ahorrado
el dinero suficiente para comprar la patineta o an le falta?

12
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

Paso 1: Inicio
Paso 2: Asignarle el valor del dinero ahorrado por Carlos
Andres a la Variable ValorAhorrado = 5.000+8000
Paso 3: Mostrar el ValorAhorrado, indicando si le alcanza o no
para la patineta.
Paso 4: Fin.

Ejemplo 2

Se retoma el ejemplo anterior tambin por continuidad.

Se necesita calcular el rea de un tringulo rectngulo cuya Base mide 3


cm, la Altura 4 cm y la Hipotenusa 5 cm.

Paso1:Inicio
Paso2:Indicar que la variable Base tiene un valor de 3cm
Paso3: Indicar que la variable Altura es de 4cm
Paso4: Calcular el rea a=( Bases*Altura )/2
Paso 5 : Mostar el rea
Paso 6 Fin.

Ejemplo 3

Tambin se pueden resolver problemas cotidianos: por medio de


seudocdigo escriba un algoritmo para poder pasarse los semforos, una
vez usted se encuentra esperando pasar como peatonal.

Paso1:Inicio
Paso2:Ver el color del semforo
Paso3: Si el semforo esta en rojo : hay que detenerse
Paso 4: Mostar mensaje Hay que detenerse.
Paso 5: Si el semforo esta en amarillo: alistarse para pasar
Paso 6: Mostar mensaje alistarse.
Paso7: Si el semforo esta en verde: pasarse la calle.
Paso 8: Mostar mensaje puede pasarse y la persona se pasa la calle.
Paso 0 Fin.

13
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

3.3 Expresar el algoritmo en un lenguaje de programacin:

Una vez el algoritmo este diseado en diagrama de flujo o en lenguaje


natural (seudocdigo), se pone en marcha la traduccin de este a un
lenguaje de programacin especifico.

Existen diferentes tipos de lenguajes que permiten traducir el algoritmo


para que pueda ser entendido por el computador entre los cuales son java,
c#, visual basic, entre otros, los cuales son tratados especficamente ms
adelante.

4 SOLUCIN DE PROBLEMAS CON DIAGRAMAS DE


FLUJO Y LENGUAJE NATURAL (SEUDOCDIGO).

Constante
Identificador Componentes
Variable

Acumulador Contador

Recuerde cuando se plantee un problema ya sabe que puede resolverlo


por medio de diagrama de flujo o por lenguaje natural.

Es importante conocer y aprender a utilizar los siguientes conceptos que


estn inmersos al momento de realizar algoritmos.

4.1.1 Variables:

Recordemos que cuando se inicia con el anlisis del problema se identifican


los datos iniciales, estos datos se estructuran o se definen como variables;

14
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

en ellas se pueden almacenar valores y son nombradas con identificadores,


es decir nombres para poder identificarlas dentro del algoritmo. Por
ejemplo, si en el problema de calcular el rea de un tringulo tengo como
datos iniciales la base y la altura, estas dos anteriores serian llamadas
variables y sus nombres sern BASE y ALTURA.

Un aspecto importante de las variables es que pueden cambiar su valor


durante la ejecucin del algoritmo.

Se debe tener en cuenta que una variable puede ser declarada, asignada
o solicitada mediante un algoritmo para poder ser utilizada.

Declaracin de una variable: Para utilizar una variable tanto en


seudocdigo como en diagrama de flujo es necesario siempre declararla,
es decir indicarle al algoritmo que va a utilizar una variable por ejemplo
nombre , quiere decir que usted necesita una variable que almacene los
nombres de las personas.

Asignacin de valor a una variable: Luego de declararla puede usted


necesitar que esa variable inicie por defecto con un valor por ejemplo
Saldo = 2000, quiere decir que utilizara la variable saldo pero que esta
inicializada con un valor de 2000, puede inicializar una variable segn el
valor que necesite para solucionar el problema.

Asignarle un valor a una variable, constante, acumulador o contador,


expresiones complejas o simples, por ejemplo.

Variable = expresin
Por ejemplo: Nombre = Carmen
Saldo = 2000
rea = (Base*altura)

Solicitar una variable: Cuando se necesita que el valor de la variable


pueda ser ingresado por un usuario al computador, entonces debe
solicitarse este valor de la variable.

15
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

Diagrama de flujo Uso Seudocdigo

Solicitar una variable Cuando se necesita que el Solicitar una variable


valor de la variable pueda ser cont=0
Nombre ingresado por un usuario al Leer Nombre
computador. Conocer Nombre

Declarar una variable Indica al algoritmo que va a Declarar una variable


utilizar una variable por ejem-
Nombre plo nombre, esta variable Declarar Variable Nombre
almacena nombres.

Asignarle valor a una variable


Para asignarle un valor a una Asignarle valor a una variable
variable, constante, acumu-
Nombre Carolina
lador o contador, expresio- Nombre= Carolina
Base 2 nes complejas o simples.
Base = 2

4.1.2 Constantes:

Almacenan datos al igual que las variables, pero su gran particularidad


es que sus datos no cambian durante la ejecucin del algoritmo, es decir
siempre el valor de la constante va ser el mismo.

Las constantes se deben declarar e inicializar.

Diagrama de flujo Seudocdigo

Declarar Una constante


Declarar Una constante
e inicializarla
e inicializarla

Maximo 100 Constante Mximo =100

16
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

4.1.3 Contadores:

Permiten almacenar valores con el objetivo de llevar a cabo un conteo en


las secuencias de ejecucin.

Como su palabra lo dice permiten contar, para poder utilizar un contador


es necesario inicializarlo en un valor y luego incrementar su valor de una
manera constante para permitir realizar el conteo.

Diagrama de flujo Seudocdigo

Declarar e iniciar un contador Declarar e inicializar un contador

cont 0 cont=0

Utlizar contador Utilizar un contador


cont=cont+1
cont cont+1

4.1.4 Acumuladores:

Permiten almacenar el valor de una variable A, sumando el valor de ella


ms el valor de una variable B

Como su palabra lo dice permiten acumular el valor de una variable, para


poder utilizar un acumulador es necesario inicializarlo en un valor y luego
iniciar con la acumulacin del valor.

Diagrama de flujo Seudocdigo

Declarar e iniciar un contador Declarar e inicializar un contador

cont 0 acum=0

Utlizar contador Utilizar un contador


acum=acum+suma
cont cont+1

17
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

4.1.5 Identificadores:

Los identificadores son nombres que se dan a las variables, constantes,


acumuladores y contadores para as poder diferenciarlos. Para asignar los
nombres se debe tener en cuenta lo siguiente:

 os nombres pueden estar formados por una combinacin de letras


L
y nmeros (saldoMes, salario, fecha2, baseTringulo, etc).

El primer carcter de un nombre debe ser una letra.

a mayora de los lenguajes de programacin diferencian las


L
maysculas de las minsculas.

 os nombres deben ser nemotcnicos, con solo leerlos se puede


L
entender lo que contienen. Deben ser muy descriptivos; no utilizar
abreviaturas, a menos que se justifique plenamente.

No utilizar caracteres reservados (%, +, /, >, etc).

No utilizar palabras reservadas por los lenguajes de programacin.

ara cumplir con convenciones ampliamente utilizadas (Jimnez,


P
2002), los nombres de procedimientos, variables y constantes
deben empezar con minscula. Ejemplo, fecha, suma, etc. Si es un
nombre compuesto por varias palabras, cada una de las palabras
(con excepcin de la primera) debe empezar con mayscula.
Ejemplo: fechaInicial, baseTringulo, etc.

5. ESTRUCTURAS ALGORTMICAS O DE PROGRAMACION

Las estructuras algortmicas estn creadas para orientarnos en la forma


de disear algoritmos, cada una de ellas representa cierto concepto que
permite lograr encontrar la solucin del problema, entre ellas tenemos:

5.1 Estructura secuencial

Es una de las estructuras ms sencilla, conocida tambin como estructura


lineal y se compone de instrucciones que deben ejecutarse secuencialmente.

18
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

Diagrama de flujo Seudocdigo

Inicio
accin 1 <accion1>
<accion2>
*
accin 2 *
*
<accionN>
accin n
Fin

Correspondencia de seudocdigo a diagrama de flujo

Inicio Paso 1: Inicio

Paso 2: Asingar el numero 2 a la constante DIV


DIV=2
Paso 3: Saber la base del tringulo y guardarlo en la vari-
able BASE
BASE
Paso 4: Saber la altura del tringulo y guardarla en la
ALTURA variable ALTURA

Paso 5: Guardar en la variable AREA el valor de


AREA=BASE*ALTURA
BASE*ALTURA

AREA=AREA/DIV Paso 6: Guardar en la variable AREA la divisin entre el


AREA sobre la variable DIV

AREA
Paso 7: Mostar el valor de rea.

Final Paso 8: Fin

19
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

5.2 Estructuras de decisin

Son utilizadas para tomar decisiones lgicas, llamadas tambin estructuras


selectivas o alternativas, en ellas se evala una condicin y en funcin del
resultado de la misma se realiza una opcin u otra.

Diagrama de flujo Seudocdigo

Inicio
Si condicin entonces
No Si
A==5
.
Fin-si
Else condicin

Las estructuras de decisin pueden ser:

Simples: (llamada si-entonces), ejecuta una determinada accin cuando


se cumple una determinada condicin. La seleccin si-entonces evala la
condicin y si la condicin es verdadera, entonces ejecuta la accin; si la
condicin es false entonces no hace nada.

Diagrama de flujo Seudocdigo

verdadera falsa Inicio


condicin
Si <condicin>
<accin>
accin S2 else
fin-si

20
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

Dobles: La estructura anterior es muy limitada y normalmente se necesitar


una estructura que permita elegir entre dos opciones o alternativas
posibles, en funcin del cumplimiento o no de una determinada condicin

Diagrama de flujo Seudocdigo

si no Si <condicin> entonces
condicin
<accion S1>
si_no
<accion S2>
accin S2 accin S2
fin-si

5.3 Estructuras cclicas y/o repetitivas

Un tipo muy importante de estructura es el algoritmo necesario para repetir


una o varias acciones un nmero determinado de veces. Las estructuras
que repiten una secuencia de instrucciones un nmero determinado de
veces se denominan bucles, y se llama iteracin al hecho de repetir la
ejecucin de una secuencia de acciones.

Y as sucesivamente para cada nmero de la lista. En otras palabras, el


algoritmo repite muchas veces las acciones.

Tales opciones repetidas se denominan bucles o lazos. La accin (o


acciones) que se repite en un bucle se denomina iteracin. Las dos
principales preguntas a realizarse en el diseo de un bucle son: qu
contiene el bucle? y cuntas veces se debe repetir?

Se manejan entonces 3 tipos de estructuras cclicas que permiten dar


respuesta a los anteriores interrogantes

21
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

5.3.1 Estructura para

Diagrama de flujo Seudocdigo

Inicio
suma=100 Inicio

suma=100
Contador = 0
sumatoria = 0 contador=100

repite 1, 100 sumatoria=0

Para 1 hasta 100


Contador=contador+1

contador=contador=1
sumatoria=sumatoria+
contador sumatoria=sumatoria+contador

Contador Mostrar contador


sumatoria

Mostrar sumatoria

fin-para
[El valor de la suma 1+2+3+
...+100 es] sumatoria
Mostrar "el valor de la suma
1+2+3+...+100 es" sumatoria

Fin Fin

En muchas ocasiones se conoce de antemano el nmero de veces que se


desean ejecutar las acciones de un bucle. Esta estructura permite ejecutar
una o varias instrucciones un determinado de veces finita, fija.

22
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

5.3.2 Estructura mientras

Diagrama de flujo Seudocdigo

Inicio Inicio

contador=0
Contado 0
leer numero

numero mientras numero>0 hacer

numero > 0
contador = contador+1

leer numero
Contado Contado
fin-mientras

numero escribir El nmero de enteros


positivos es contador
Cierre
Fin

El numero es

Fin

Se llama Mientras a la estructura algortmica que se ejecuta mientras la


condicin evaluada resulte verdadera. Se evala la expresin booleana y,
si es cierta, se ejecuta la instruccin especificada, llamada el cuerpo del
bucle. Entonces se vuelve a evaluar la expresin booleana, y si todava

23
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Introduccin a la Algoritmia

es cierta se ejecuta de nuevo el cuerpo. Este proceso de evaluacin de la


expresin booleana y ejecucin del cuerpo se repite mientras la expresin
sea cierta.

Cuando se ejecuta la instruccin mientras, la primera cosa que sucede es


que se evala la condicin (una expresin booleana). Si se evala falsa,
ninguna accin se toma y el programa prosigue en la siguiente instruccin
del bucle. Si la expresin booleana es verdadera, entonces se ejecuta
el cuerpo del bucle, despus de lo cual se evala de nuevo la expresin
booleana. Este proceso se repite una y otra vez mientras la expresin
booleana (condicin) sea verdadera.

5.3.3 Estructura repita

La estructura cclica REPITA, al igual que la estructura cclica mientras, se


ejecuta un nmero indeterminado de veces, estas dos estructuras tienen
un comportamiento similar, presentando su principal diferencia en el
lugar de estructura donde se evala la condicin, dado que la estructura
MIENTRAS evala la condicin del ciclo al inicio del mismo y la estructura
REPITA lo hace al final del mismo, de este modo, en la estructura cclica
REPITA, el programador garantiza que el ciclo se ejecuta al menos una
vez.

accin

condicin
no
si

24
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
GLOSARIO

ALGORITMO: Es un conjunto de instrucciones que conducen a la solucin


de un problema determinado, las cuales deben estar relacionadas lgica
y ordenadamente.

ANSI (American National Standards Institute): El Instituto Nacional


Estadounidense de Estndares, es una organizacin sin nimo de lucro
que supervisa el desarrollo de estndares para productos, servicios,
procesos y sistemas en los Estados Unidos.

ISO (International Organization for Standardization): La


Organizacin Internacional para la Estandarizacin, es una federacin
mundial que agrupa a representantes de cada uno de los organismos
nacionales de estandarizacin (como lo es el ICONTEC en Colombia), y
que tiene como objeto desarrollar estndares internacionales que faciliten
el comercio internacional entre otros.

SEUDOCODIGO: Es una descripcin informal de alto nivel de un algoritmo,


que utiliza las convenciones estructurales de un lenguaje de programacin
verdadero, pero que est diseado para la lectura.

25
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
BIBLIOGRAFA

[1]. JOYANES Luis. Fundamentos de programacin, Algoritmos y estructura


de datos. McGraw Hill

[2] Lopes Garcia, Juan Carlos. Algoritmos Y Programacin (Gua Para


Docentes), Segunda Edicin, 2007, 2009.

26
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje
Control de documento
Construccin Objeto de Aprendizaje
Introduccin a la Algoritmia
Desarrollador de contenido Leydy Carolina Muoz
Experto temtico
Asesor pedaggico Rafael Neftal Lizcano Reyes
Claudia Milena Hernndez
Produccin Multimedia Luis Fernando Botero Mendoza
Victor Hugo Tabares
Programadores Daniel Eduardo Martnez
Lder expertos temticos Ana Yaqueline Chavarro Parra
Lder lnea de produccin Santiago Lozada Garcs

27
FAVA - Formacin en Ambientes Virtuales de Aprendizaje SENA - Servicio Nacional de Aprendizaje

También podría gustarte