ALGORITMOS Y PROGRAMACIÓN GRADO DÉCIMO TEMA 1: CONCEPTOS BÁSICOS Un algoritmo es una secuencia, finita y ordenada de instrucciones que han de seguirse para resolver.

Download Report

Transcript ALGORITMOS Y PROGRAMACIÓN GRADO DÉCIMO TEMA 1: CONCEPTOS BÁSICOS Un algoritmo es una secuencia, finita y ordenada de instrucciones que han de seguirse para resolver.

Slide 1

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 2

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 3

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 4

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 5

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 6

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 7

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 8

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 9

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 10

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 11

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 12

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 13

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 14

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 15

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 16

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 17

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 18

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 19

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 20

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 21

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 22

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 23

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 24

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 25

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 26

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 27

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 28

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 29

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 30

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 31

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 32

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 33

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 34

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 35

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones


Slide 36

ALGORITMOS Y
PROGRAMACIÓN GRADO
DÉCIMO TEMA 1:
CONCEPTOS BÁSICOS
Un algoritmo es una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programación concreto) uno o más algoritmos. Un algoritmo
puede expresarse de distintas maneras: en forma gráfica, como
un diagrama de flujo, en forma de código como
en pseudocódigo o un lenguaje de programación, en forma
explicativa, etc.

ALGORITMO: Nombre
El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra del
matemático
árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

ALGORITMO
• Es el método para resolver problemas. Es
una serie de operaciones detalladas a
ejecutar paso a paso y que conducen a la
resolución de un problema. Conjunto de
reglas o la forma de describir la solución
del problema. Es una descripción de
acciones que deben ser ejecutadas y una
descripción de los datos que son
manipulados por esas acciones.

ALGORITMO: Características
CONCRETO

FINITO

LEGIBLE

Debe realizar las
Debe
Debe
Debe
Debe
generar
indicar
realizar
estarun
elbien
orden
mismo
las
Debe
Debe
operaciones
tener
estar
terminar
libre
con un
deen
funciones
de
resultado
estructurado
realización
usiempre
operaciones
para
de cada
que
su
mínimo
errores.
algún
de momento
utilización
(Validado)de
para
fácil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.

Debe ser...

EFICIENTE

NO
AMBIGUO

DEFINIDO
PRECISO

PARTES DE UN ALGORITMO

• 1.- Entrada: Datos e
Información
• 2.- Proceso: Elaboración
o Desarrollo
• 3.- Salida: Resultado y
Terminación

ALGORITMO: Estructura
Corresponden a los datos
requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que
realizan las operaciones
con los datos.
Determinan la
organización de las
instrucciones que
deben ser realizadas.

Datos

Procesos

Estructuras de
Control

ALGORITMO: Elementos
Las instrucciones
que se van a
realizar deben estar
bien estructuradas y
tener un orden
lógico, con el fin de
evitar
inconsistencias en
el resultado.

Es necesario identificar que
datos se necesitan ingresar,
cuales sirven de forma auxiliar
y cuales se van a generar.

Definición
de variables y constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

ALGORITMO: Quienes

pueden hacer un algoritmo?
Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para
dar solución a
situaciones cotidianas
de forma natural.
Sin embargo el programador, diseña el
algoritmo consiente de que al realizar
cada paso obtendrá la solución de un
problema específico.

ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
1

Buscar la página de cines en el diario
local, con fecha de hoy
2

Revisar la cartelera de arriba abajo y de izquierda
a derecha, buscando entre los títulos existentes.
Si se encuentra el título La Guerra de las
Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

3

4

Si no se encuentra el título en la cartelera,
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.

ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Los algoritmos se crean para resolver
problemas.
Es importante que junto al algoritmo,
describamos claramente el problema que éste
nos permite resolver.

ALGORITMO:
Requisitos

Por ejemplo:
Si se requiere hallar la velocidad de un
automóvil, es necesario, definir si la distancia
debe ser en metros, kilómetros, etc y el tiempo
estará dado en segundos u horas, ya que la
velocidad puede representarse en Km/h ó
mts/seg.

No debemos omitir el contexto de
nuestros algoritmos.
Es necesario establecer lo que se
necesita y dónde se debe comenzar.
Seguir los pasos del algoritmo debe
llevarnos a la
resolución del problema.
Siempre que sea posible seguiremos
personalmente los pasos de nuestro
algoritmo para
comprobar que son
efectivamente correctos y conducen efectivamente a la
solución esperada.

Debe Definirse el
problema
Debe estar dentro
de contexto
Debe resolver el
problema
Debe evitar la
ambigüedad

ALGORITMO: Técnicas de Representación
Está técnica permite representar el
algoritmo mediante un lenguaje más
estructurado, facilitando su posterior
codificación.

Es una técnica que permite
representar gráficamente las
operaciones y estructuras que se
van a realizar, mediante una
simbología estándar, con un único
punto de inicio y uno de finalización.

Diagrama de Flujo
Pseudocódigo
Inicio
Instrucción 1
Instrucción 2
Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin

PSEUDOCÓDIGO: Cómo se Hace?
Cada instrucción que se va a realizar
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

1

Se debe mantener una identación o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

2

3

La representación de las estructuras son
similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Leer : Denota la acción de introducir datos o variables
desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde

variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación
aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

DIAGRAMA DE FLUJO:
Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
para
Permite
realización
indicar
la
indicar
el punto
de
de un
Entrada
proceso
de matemático,
datos
desde
inicio
y finalización
del
un
dispositivo
o una
operación
estándar
de
diagrama
asignación

DIAGRAMA DE FLUJO:
Simbología
Conectores
Impresión
Decisión
Flujo

Permiten enlazar los
Permiten
Permitedar
establecer
continuidad
una
símbolos de un sentido
al condición
diagrama relacional
si la página
ó
único pueden ser
lógica
o área
que
dela
puede
trabajo
tomar
esta
Indica
realización
de
horizontales
o
verticales.
operaciones
salida a se
un
un
llena,
valor de verdadero
eldecírculo
o
Estas
no
pueden
dispositivo
estándar
falso,
utilizade
como
este
un
símbolo
conector
se
entrecruzarse
y
cada
una
(el deducen
monitor
dentro
deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el
alternativos
otro símbolo
de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

DIAGRAMA DE FLUJO:
Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Si

No
No No
Si
No
Condición
Condición
No
Condición
Si
No
Condición
Val1

Condición

Val2

Si Si

Condición
Val3
Otro

Caso
condición
Si
condición
entonces

Val1:
Si condición entonces
Instrucciones
Instrucciones
Si condición
entonces
Val2:
si condición
no
Instrucciones
Si
entonces
Instrucciones
Si condición entonces
si no
Instrucciones
Val3:
Instrucciones
Instrucciones
Instrucciones
si no
Otros:
Instrucciones
Instrucciones

Fin Caso

DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Para
Ciclo
Ciclo
Mientras
Hasta

v=valini,v=valfinal, incremento
Instrucciones

Condición
Instrucciones
Si

Condición

Instrucciones

Si

No

No

..
..
.
Para
v=valini, v=valfinal, inc
.
Instrucciones

Repita
Mientras
Fin
Para que condición
.. Instrucciones
Instrucciones
. Hasta que condición
Fin Mientras
v:. variable
.
valini:
valor inicial
.
valfinal: valor final
inc: incremento

SIMBOLO, REPRESENTACIÓN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representación gráfica del algoritmo:
diagramas de flujo
Símbolo

Representación

Significado

Flechas o líneas de flujo

Indica el sentido de
ejecución de las acciones

Rectángulo

Proceso o acción a realizar
(por ejemplo, asignación)

Paralelogramo

Representa una entrada o
salida

Rombo

Representa el constructor de
selección (decisión lógica)

Rectángulo redondeado

Representa el inicio y fin del
diagrama

Círculo

Se usa como conector entre
dos partes del diagrama

ALGORITMO: Fases de Diseño
Definición del problema
Análisis del problema
Selección de la mejor alternativa

Diagramación
Prueba de escritorio

ALGORITMO: Definición del
Problema

Está dada por el enunciado del
problema, el cuál debe ser claro y
completo

Es importante que conozcamos
exactamente que se desea.

Mientras qué esto no se comprenda, no
tiene caso pasar a la siguiente etapa.

ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
suministran

Recursos

Proceso

Entendido el problema para
resolverlo es preciso analizar

Fórmulas

Área
de
Trabajo

Los datos de
salida o
resultados que
se esperan

ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.

La
que
produce
los Solución ..5
Analizado el problema
resultados
en el
Lo importanteEsperados
es determinar cuál
Posiblemente
tengamos
la mejor alternativa
menorestiempo
y al menor
varias formas de resolverlo
costo

Solución ..2

ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
problema

Plasmar la
solucion
mediante el
Pseudocódigo

ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Se diferentes
utilizadatos de
para
Dar
Al realizar
anterior
setodos
puede
Dar diferentes
datos
entrada
y lo
considerar
corroborar
que
el
comprobar
algoritmo es
de entradasialelprograma
los
posibles
casos,
algoritmo
plasmado
correcto
o aún los
de
o cualquier
no
si hay necesidad
enexcepción
de hacer
ajustes
esperados,
para
asegurar
seguir laalsecuencia
indicada
herramienta
paso presenta
anterior)
que(volver
el programa
no
la
solución
al
produzca
errores en
problema
inicialse
ejecución
cuando
hasta
presentenobtener
estos los
casos.
resultados

ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato

Corresponde al tipo de
Corresponde a un
Corresponde
valorlaque puede
a un
Minima parte
espacio dedememoria
que
espacio
almacenarse
de memoria
enque
un
información.
almacena
un
dato
que
Se refiere
a los elementos
almacena
espacio
de
un memoria
dato que
que
dentro
del
programa
en
sedentro
utilizan en
algoritmos
definido
del
ylosa
programa
la cantidad
en
ejecución
para realizar
alguna mantiene
ejecución
de espacio
cambia
queoperación
requiere
o varía
sobresiempre
estos.
su contenido
parasualmacenar
contenidoun
(valor)..
valor.
(valor).

ALGORITMO: Tipos de Datos
Boleano
Real

cadena

Lógicos
Entero

Caracter

Numéricos

Carácter
Tipos
de
Datos

ALGORITMO: Operadores

>=
<=

>
<
=

Relacionales

!=
<>

+ Aritméticos
/ %
^
No
Y &&
O ||

Lógicos

Programa de Aplicación
Programa que permite resolver la ecuación de primer grado

Programa
que permite
resolver la
ecuación de
primer grado

ax+b=0
a
?
b

x = -b / a

Algoritmo EC 1er Grado
Variables
a,b,x de tipo entero
Inicio
Escribir(“Ingrese valores de EC”)
Leer (a,b)
Si a = 0 entonces
escribir (“Error”)
sino
Inicio
x=-b/a
Escribir (“La solución es:”,x)
Fin
Escribir(“Fin programa”)
Fin

#include
int a,b,x;
main()
{
printf(“Ingrese valores de EC”);
scanf(“%d %d”,&a,&b);
if a ==0 printf (“error”);
else
{
x = -b / a;
printf(“La solución es %d:”,x);
}
printf(“Fin programa”);
}

EJEMPLO DE ALGORITMOS
Algoritmo: Secuencia ordenada de acciones primitivas que realizan un trabajo.
Ejemplos:

Ir al trabajo
1.Levantarse
2.Darse una ducha
3.Vestirse
4.Desayunar
5.Tomar el bus
(transporte)

Cálculo de la media aritmética de
dos números con una calculadora
1.Pulsar la tecla AC
2.Teclear el primer número
3.Pulsar la tecla +
4.Teclear el segundo número
5.Pulsar la tecla +
6.Pulsar la tecla /
7.Teclear el número 2
8.Pulsar la tecla =

Búsqueda Secuencial
Consiste en ir comparando el elemento que se busca con
cada elemento del arreglo hasta que se encuentra.
0

1

2

I

N

F

M

M

M

3

4

O

M

5

M

M

6

Á

7

T

8

I

9

C

A

Índice resultado = 4

1

Ordenamiento Burbuja
El algoritmo consiste en que los elementos mÁs pesados se
hundan y los mÁs livianos salgan a flote.
25

25

25

15

15

1

32

15

15

25

1

15

32

1

1

25

15
1

1

32

32

32

25
32
1

Un primer ejemplo de algoritmo
El siguiente algoritmo calcula el área y el perímetro de un rectángulo

Datos de entrada: b y a (base y altura)
Datos de salida: ar y pe (área y perímetro)
Procesos: ar = b*a, pe = 2*(b + a)
1.
2.
3.
4.
5.
6.
7.

Inicio
Leer base y altura (b, a)
ar ← b*a
pe ← 2*(b + a)
Escribir “Área del rectángulo: ”, ar
Escribir “Perímetro del rectángulo: ”, pe
Fin

Análisis resumido
del problema

ACTIVIDADES
1. COPIAR DIAPOSITIVAS EN EL CUADERNO.
2. DESARROLLAR LOS SIGUIENTES ALGORITMOS EN
EL CUADERNO (Llegar al colegio,
3. REALIZAR EXAMEN EN EL SIGUIENTE LING: (Copiar
en el cuaderno preguntas y respuestas)
http://www.creartest.com/hacertests-63959EXAMEN_DE_ALGORITMICA.php
4. REALIZAR EL SIGUIENTE TEST: (Copiar en el cuaderno
preguntas y respuestas) http://www.daypo.com/testlogica-algoritmos.html
5. REALIZAR TEST: (Copiar en el cuaderno preguntas y
respuestas) http://www.daypo.com/test-algoritmosdiagrama-flujo.html

GENERALIDADES SOBRE LOS
ALGORITMOS
• Describir los pasos para cruzar la calle.

• Describa los pasos para cambiar un
bombillo quemado.

• Describa los pasos para llevar a una
amiga a cine.

• Describa los pasos para cambiar la
llanta pinchada de una cicla.

PALABRAS CLAVES
Computadora, Hardware, Software, Informática,
Código binario, Periféricos, Memoria,
Programación de computadoras, programador,
Programación estructurada, Lenguaje de
programación, Interprete, Compilador, Variable,
Constante, Diagrama de flujo, Diagramas de
flujo, Algoritmos, Toma de decisión, Ciclos,
Funciones