Está en la página 1de 21

Medios de

expresión de un
algoritmo

WWW.UMOV.MX
B2
Mapa conceptual

Medios de expresión
de un algoritmo

Lenguajes de
Lenguaje natural Pseudocódigo Diagramas de flujo
programación

Condiciones y
Elementos
ciclos

Recursividad Arreglos B2

WWW.UMOV.MX
Funciones
2.1 Lenguaje natural

Los algoritmos pueden ser expresados de muchas maneras,


incluyendo al lenguaje natural, pseudocódigo, diagramas de flujo y
lenguajes de programación entre otros.

Las descripciones en lenguaje natural tienden a ser ambiguas y


extensas.

B2

WWW.UMOV.MX
2.1 Lenguaje natural

● Los algoritmos escritos en este lenguaje se caracterizan por


seguir un proceso de ejecución común y lógico, describiendo
textualmente paso a paso cada una de las actividades a realizar
para resolver un problema determinado.

● Los inconvenientes de escribir algoritmos en este lenguaje son:


la ambigüedad, la no universalidad y la amplitud del mismo lo
cual genera errores y no puede ser interpretado correctamente
por el computador. B2

WWW.UMOV.MX
2.1 Lenguaje natural

Para escribir un algoritmo con Lenguaje Natural los pasos que se


deben seguir son:

1. Conocer el problema o la tarea a completar.


2. Obtener la información previa o los datos de entrada.
3. Diseñar nuestra secuencia de acciones.
4. Probar nuestro algoritmo para validarlo y en caso necesario
repetir por medio de interacciones el proceso.
5. Mostrar la información de salida o resultado de nuestra tarea. B2

WWW.UMOV.MX
2.1 Lenguaje natural

1. Ejemplo de algoritmo con lenguaje natural


“Cómo ver una película en Netflix”:
INICIO
1. Encender la televisión
2. Abrir Netflix
3. Buscar una película interesante
4. Si la portada llama mi atención
4a. Leer la reseña
4b. Comprobar la valoración de otros usuarios
4c. Ver el trailer
B2
4d. Sí me parece bien, comenzar a verla
4e. Sino, volver al paso 4 de búsqueda

WWW.UMOV.MX
1. Ajustar el volumen
2. Disfrutar la película
FIN
2.2 Pseudocódigo

Es la descripción de un algoritmo que asemeja a un lenguaje de


programación pero con algunas convenciones del lenguaje natural (de
ahí que tenga el prefijo pseudo, que significa falso).

Los beneficios que proporciona son:

● Representar de forma fácil operaciones repetitivas complejas.


● Es más sencilla la tarea de pasar de pseudocódigo a un lenguaje
de programación formal. B2
● Si se siguen las reglas de alineación, pueden observarse
claramente los niveles en la estructura del programa.

WWW.UMOV.MX
2.2 Pseudocódigo

Elementos del Pseudocódigo.

● Ordinal

Datos
Representaciones simbólicas de ● No ordinal
un atributo o variable ● Compuesto
● Abstracto
● De lectura
Operaciones Son aquellas que se aplican a los
● De escritura
Primitivas datos para transformarlos en
● De asignación
Elementales nuevos datos o información
● Aritméticas o lógicas
Son los medios a través de los
● Secuenciales
Estructuras de cuales se dirigen las acciones por
● Selectivas o de decisión
control un camino u otro
● Iterativas o de repetición B2

WWW.UMOV.MX
2.2 Pseudocódigo

Condiciones y ciclos

Un condicional, como su nombre lo indica, es una condición para discernir entre


una opción u otra, y en el proceso mental normalmente se manifiesta con un
“Si”; por ejemplo: Si (va a llover), coge el paraguas.

Un ciclo es cuando una acción se repite muchas veces (condicionalmente)


Hay tres estructuras de control para especificar la repetición: while (mientras), do-
while (hacer_mientras/repetir, repeat) y for (desde).

Mientras (condición) Mientras (condición) do Desde valor inicial al valor final (+1) B2
Bloque de Bloque de Bloque de instrucciones;
instrucciones; instrucciones; Fin_Desde
Fin_mientras Fin_mientras_do

WWW.UMOV.MX
2.2 Pseudocódigo

Recursividad

Una función recursiva es aquella que se llama a sí misma para


resolverse. Un ejemplo típico de recursividad sería la función factorial.

Arreglos
Proceso Prueba
Definir num como entero;
Son estructuras que almacenan valores del mismo tipo como números o Dimension num[5];
num[1]=5; B2
cadenas. Tienen una longitud determinada. num[2]=10;
num[3]=15;
num[4]=20;
num[5]=25;

WWW.UMOV.MX
FinProceso
2.2 Pseudocódigo

Funciones

Una función de pseudocódigo, al igual que una función matemática, es


una rutina que recibe uno o varios valores de entrada y regresa una x,y f(x)
Función
salida. Suma (x,y)

También existen procedimientos, que son rutinas que reciben uno o Entrada
x + y
Salida

varios valores de entrada, pero no devuelven ninguna salida.


En ambos casos es necesario dejar en claro cuáles son las entradas para
x=1 , y=3 1+3 f(x)=4
el algoritmo, esto se hace comúnmente colocando estos valores entre
paréntesis al principio o bien declarando explícitamente con un x=4 ,y=7 4+7 f ( x ) = 11

enunciado. B2
En el caso de las funciones, es necesario colocar una palabra como
regresar o devolver para indicar cuál es la salida generada por el

WWW.UMOV.MX
algoritmo.
2.3 Diagramas de flujo

Un diagrama de flujo es un diagrama que describe un proceso, sistema o


algoritmo informático. Se usan ampliamente en numerosos campos
para documentar, estudiar, planificar, mejorar y comunicar procesos que
suelen ser complejos en diagramas claros y fáciles de comprender.

El uso de los diagramas de flujo para documentar procesos de negocios


se inició entre las décadas de 1920 y 1930. En 1921, los ingenieros
industriales Frank y Lillian Gilbreth presentaron el "diagrama de flujo de
procesos" en la Sociedad Americana de Ingenieros Mecánicos (ASME –
B2
American Society of Mechanical Engineers).

WWW.UMOV.MX
2.3 Diagramas de flujo

Los diagramas de flujo pueden:


● Demostrar cómo el código está organizado.
● Visualizar la ejecución de un código dentro de un programa.
● Mostrar la estructura de un sitio web o aplicación.
● Comprender cómo los usuarios navegan por un sitio web o programa.

Los diagramas relacionados que se emplean en el software informático


incluyen:
● Lenguaje unificado de modelado (UML): este es el lenguaje de propósito
general usado en la ingeniería de software para el modelado.
● Diagramas Nassi-Shneiderman (NSD): usados para la programación
B2
informática estructurada.
● Diagramas DRAKON: DRAKON es un lenguaje de programación visual de

WWW.UMOV.MX
algoritmos empleado para crear diagramas de flujo.
2.3 Diagramas de flujo

Herramienta para crear diagramas de flujo online.


www.lucidchart.com

Es una página que te permite realizar diagramas de flujo, con un


registro previo puedes generar gratuitamente un número restringido de
diagramas que puedes exportar.

draw.io

B2
Permite guardar los diagramas en el disco duro de tu ordenador, Gdrive,
OneDrive o Dropbox. Te invito a ingresar a estas páginas para que te

WWW.UMOV.MX
vayas familiarizando con los diagramas de flujo, sin embargo en el
bloque 4 veremos a más detalles estos diagramas.
2.4 Lenguajes de programación

Un lenguaje de programación es aquella estructura que, con una cierta


base sintáctica y semántica, imparte distintas instrucciones a un
programa de computadora.

Ada Lovelace es considerada como la primera programadora de


computadoras conocida en todo el mundo. De ahí, curiosamente que se
hablara en su honor del lenguaje de programación Ada.

Muchos son los lenguajes que existen actualmente en el mercado de la


B2
tecnología y la informática. No obstante, entre los más importantes
podemos citar a Pascal, Visual Basic, SQL, Delphi, Lingo, Cobol o Java.

WWW.UMOV.MX
2.4 Lenguajes de programación

Normalmente se distingue entre los siguientes tipos de lenguaje de


programación:

Lenguajes de bajo nivel. Se trata de lenguajes de programación que


están diseñados para un hardware específico y que por lo tanto no
pueden migrar o exportarse a otros computadores. Sacan el mayor
provecho posible al sistema para el que fueron diseñados, pero no
aplican para ningún otro. Por ejemplo lenguaje ensamblador.

Lenguajes de alto nivel. Se trata de lenguajes de programación que


aspiran a ser un lenguaje más universal, por lo que pueden emplearse B2
indistintamente de la arquitectura del hardware, es decir, en diversos
tipos de sistemas. Los hay de propósito general y de propósito

WWW.UMOV.MX
específico. Por ejemplo PHP, Basic, Java, etc.
2.4 Lenguajes de programación

Hay formas de practicar distintos lenguajes de programación, por


ejemplo:

https://paiza.io/projects/swKlAF0OqTIAlJj4GFkXZQ

Esta página permite practicar con la sintaxis de varios lenguajes de


programación.

B2

WWW.UMOV.MX
2.5 Descripción de un algoritmo

Para plantear un algoritmo adecuado es preciso seguir estos tres


pasos:

1. Enunciar el problema. Esto es clave, ya que la manera en que


planteemos el problema será el enfoque específico que nos servirá
para alcanzar una solución. Se debe recopilar datos, abordar el
problema desde una perspectiva amplia y a la vez puntual.
2. Analizar la solución general. Se debe cotejar los datos previos con
las posibles soluciones y explorar las áreas de trabajo, fórmulas y
otras herramientas posibles. Luego, aproximarse a diversas
tentativas de solución. B2
3. Elaborar el algoritmo. Una vez elegido el camino a seguir, se debe
elegir el tipo de algoritmo adecuado y plantearlo, para luego

WWW.UMOV.MX
ponerlo a prueba y determinar si es exactamente la solución
deseada.
2.5 Descripción de un algoritmo

La descripción de un algoritmo usualmente se hace en tres niveles:

1) Descripción de alto nivel. Se establece el problema, se selecciona


un modelo matemático y se explica el algoritmo de manera verbal,
posiblemente con ilustraciones y omitiendo detalles.

1) Descripción formal. Se usa pseudocódigo o diagramas de flujo


para describir la secuencia de pasos que encuentran la solución.

1) Implementación. Se muestra el algoritmo expresado en un


B2
lenguaje de programación específico o algún objeto capaz de llevar
a cabo instrucciones.

WWW.UMOV.MX
2.5 Descripción de un algoritmo

1) Descripción de alto nivel

Resolver la suma de 2 números hasta que la suma sea mayor a 10

2) Descripción formal 3) Implementación

B2

WWW.UMOV.MX
CIERRE DE BLOQUE 2

● ¿Cuál es la diferencia entre utilizar pseudocódigo o diagramas de


flujo?
● ¿Para ti, cuál es de mayor utilidad? y ¿Por qué?
● ¿Has trabajado con algún lenguaje de programación?
● Con esto concluimos este bloque, en el cual hablamos sobre los
medios de expresión de un algoritmo, así como su descripción.
● Los invito a que ahora continúen con su evaluación parcial.
● Si tienen alguna duda o pregunta pueden escribirme por
plataforma. B2
● Nos vemos en el siguiente bloque.

WWW.UMOV.MX

También podría gustarte