Sie sind auf Seite 1von 7

Bloque 2.

Algoritmos y pseudocódigo

Autores
Manuel José Blanco Bargé

Todo el documento está sujeto a los siguientes términos de la licencia Creative


Commons Reconocimiento-CompartirIgual 4.0 Internacional
De espectador a programador: El camino para entender la tecnología aprendiendo a manejarla

Índice
Algoritmos y pseudocódigo ........................................................................................... 2
Objetivos....................................................................................................................... 2
Algoritmo ...................................................................................................................... 2
Representación de un algoritmo ................................................................................... 3
Pensar antes de programar .......................................................................................... 4
Recuerda ...................................................................................................................... 6
Para saber más ............................................................................................................ 6

INTEF 2015 Pág. 1


De espectador a programador: El camino para entender la tecnología aprendiendo a manejarla

Algoritmos y pseudocódigo

Objetivos

Los principales objetivos de este bloque son:

• Entender qué es un algoritmo


• Conocer las distintas formas de representar un algortimo
• Comprender la importancia de pensar antes de ponerse a programar

Algoritmo

Un algoritmo es un conjunto ordenado de pasos a seguir (instrucciones concretas) que


llevan a resolver un determinado problema. Debe cumplir con las siguientes
condiciones, debe ser:

• Correcto (Resuelve el problema)


• Finito (Conduce a la solución en un tiempo dado)
• Flexible (No es exclusivo a para un tipo de problema sino que sirve como
método general para distintos datos)
• Claro (comprensible por otras personas)
• Eficiente (ahorro de tiempo y recursos)
• Portable (Independiente de la máquina o del lenguaje utilizado)

Aunque no seamos conscientes, en la vida diaria estamos utilizando a diario algoritmos,


muchos son muy sencillos, pero no dejan de ser algoritmos y que podemos describir
utilizando el lenguaje natural, es decir, con seudocódigo. Veamos un ejemplo muy
básico:

ALGORITMO ponerse los zapatos.

INICIO

Coger los zapatos.

SI los cordones de los zapatos están anudados ENTONCES desatar los


zapatos

Sentarse en una silla.

Ponerse el zapato derecho en el pie derecho.

Atarse los cordones del zapato derecho.

Ponerse el zapato izquierdo en el pie izquierdo.

INTEF 2015 Pág. 2


De espectador a programador: El camino para entender la tecnología aprendiendo a manejarla

Atarse los cordones del zapato izquierdo.

FIN

Si tienes curiosidad por ver un algoritmo clásico, mira este enlace sobre el Minimax (el
más conocido para juegos de 2 adversarios, movimientos alternos “ahora tu, ahora yo”.
No se puede utilizar en juegos donde hay “azar”, sino que el juego debe estar
perfectamente definido, como las tres en raya y el ajedrez.)

Representación de un algoritmo

Para la representación de un algoritmo antes de ser convertido a lenguaje de


programación, se suele utilizar alguno de los siguientes métodos:

• Lenguaje natural (español, inglés, etc)


• Diagramas de flujo
• Pseudocódigo
El Pseudocódigo es sin duda de las representaciones más utilizadas. Es una forma de
expresar el algoritmo utilizando el lenguaje natural,comprensible para cualquier
persona, pero añadiendo ciertas instrucciones típicas de los lenguajes de programación.

No existe una sintaxis estándar para el pseudocódigo, pero como hemos comentado, en
el pseudocódigo se reflejan las instrucciones típicas de los lenguajes de programación,
como las instrucciones condicionales:

SI condición ENTONCES
instrucciones/pasos a realizar si se cumple la
condición
SI NO
instrucciones/pasos a realizar si NO se cumple la
condición
FIN SI

Y las instrucciones repetitivas:

REPETIR n veces
instrucciones/pasos a realizar
FIN REPETIR

INTEF 2015 Pág. 3


De espectador a programador: El camino para entender la tecnología aprendiendo a manejarla

REPETIR HASTA condición de salida


instrucciones/pasos a realizar hasta que se cumpla la condición de salida del bucle
FIN REPETIR

En definitiva, el pseudocódigo se trata de un falso lenguaje, ya que apela a las normas


de estructura de un lenguaje de programación aunque está pensado para que pueda ser
leído por un ser humano y no interpretado por una máquina.

El pseudocódigo, en este sentido, está considerado como una descripción de un


algoritmo que resulta independiente de otros lenguajes de programación. Para que una
persona pueda leer e interpretar el código en cuestión, se excluyen diversos datos que no
son clave para su entendimiento. Veamos un par de ejemplos orientados a crear
algoritmos matemáticos:

Ningún ordenador podría interpretar estas instrucciones. Para crear un programa a partir
del algoritmo, una vez refinado el pseudocódigo, deberíamos reescribirlo en un leguaje
de programación: C, C++, Java, Scratch...

Pensar antes de programar

Si comienzas a programar directamente, salvo que sea algo realmente muy sencillo lo
que vas a hacer, lo más probable es que el algoritmo que crees no sea ni claro ni
eficiente.

Que un programa funcione, no significa que esté bien hecho. Seguramente todos
podríamos construir una casa poniendo 10 columnas en medio del salón para que se
sostenga, pero no sería eficiente ni estético.

En programación, los usuarios no van a ver las columnas que hay dentro de la casa, pero
si tú como programador añades 10 columnas en medio del “salón” de tu programa, ese
programa será muy difícil de mantener o de actualizar en el futuro.

Veamos un ejemplo muy sencillo. Supongamos que queremos hacer un programa que
pida un número al usuario y muestre la tabla de multiplicar de ese número. Si no nos

INTEF 2015 Pág. 4


De espectador a programador: El camino para entender la tecnología aprendiendo a manejarla

paramos a pensar, una solución a la que podríamos haber llegado con scratch y que
funcionaría sería la siguiente:

Pero este no es un buen algoritmo, ya que estamos repitiendo la misma instrucción 10


veces (hemos metido 10 columnas en nuestro salón). Si antes de ponernos a programar,
nos sentásemos a pensar un poco en un algortimo que calcule la tabla de multiplicar,
seguramente llegaríamos a una solución como esta, que seguramente todos somos
capaces de entender:

ALGORITMO mostrar tabla de multiplicar


DATOS
número (el número que pedimos al usuario)
multiplica (el número por el que vamos multiplicando)
INICIO
Pedir un número al usuario y guardarlo en número
multiplica = 1
REPETIR 10 veces
ESCRIBIR EL TEXTO “número x multiplica =”
ESCRIBIR el resultado de
multiplicar número x multipica
INCREMENTAR en 1 multiplica
FIN REPETIR
FIN

INTEF 2015 Pág. 5


De espectador a programador: El camino para entender la tecnología aprendiendo a manejarla

Una vez que hemos pensado el algortimo, el problema ya está resuelto, y simplemente
tendríamos que utilizar un lenguaje de programación para escribir este algoritmo
(Scratch, java, javascript, C++, etc.).

Veamos como quedaría este algoritmo una vez que lo hemos programado en Scratch:

Recuerda

Antes de comenzar a programar, aunque sea con un lenguaje sencillo y visual como
Scratch, es importante pensar cómo vas a hacer las cosas y los pasos que vas a seguir
para resolver el problema (Algortimo).

Para saber más


Algoritmos y programación. Guía para docentes

http://www.eduteka.org/pdfdir/AlgoritmosProgramacion.pdf

Obra publicada con Licencia Creative Commons Reconocimiento Compartir igual 4.0

Formación en Red del INTEF

INTEF 2015 Pág. 6

Das könnte Ihnen auch gefallen