Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ALGORITMOS
En programación, un algoritmo supone el paso previo a ponerse a escribir el código. Primero debemos encontrar la forma
de obtener la solución al problema (definir el algoritmo informático), para luego, a través del código, poder indicarle a la
máquina qué acciones queremos que lleve a cabo. De este modo, un programa informático no sería más que un conjunto
de algoritmos ordenados y codificados en un lenguaje de programación para poder ser ejecutados en un ordenador.
Input (entrada). Información que damos al algoritmo con la que va a trabajar para ofrecer la solución esperada.
Proceso. Conjunto de pasos para que, a partir de los datos de entrada, llegue a la solución de la situación.
Output (salida). Resultados, a partir de la transformación de los valores de entrada durante el proceso.
De este modo, un algoritmo informático parte de un estado inicial y de unos valores de entrada, sigue una serie de pasos
sucesivos y llega a un estado final en el que ha obtenido una solución.
Podemos decir que un algoritmo es un conjunto de operaciones (finitas y numeradas) cuyo objetivo es encontrar la
solución de un problema o realizar un cálculo determinado.
Ejemplo
Un ejemplo de algoritmo que seguimos todos los días (o deberíamos) es el proceso de lavarse los dientes:
4. Cepillar otra muela…. hasta terminar el cepillado de todas las muelas y dientes.
5. Enjuagarse.
Si seguimos este algoritmo conseguiremos solucionar el problema que teníamos antes de iniciarlo (dientes sucios).
En el ámbito de la informática, los algoritmos son indispensables y son la esencia de todos los programas
Conclusión
Como hemos visto, un algoritmo informático no es más que un conjunto de instrucciones para conseguir un fin. Los
algoritmos están muy presentes en el ámbito de la informática, pero también en nuestra vida cotidiana. Existen
numerosos tipos y ejemplos de algoritmos y, dependiendo de la situación en que nos encontremos, unos u otros nos
ayudarán a llegar a la solución que necesitemos.
LENGUAJES DE PROGRAMACIÓN
El lenguaje es nuestro principal medio de comunicación y es el que permite que interactuemos entre humanos, así ha sido
siempre. Por ejemplo, para una sociedad humana, el lenguaje contiene los elementos necesarios que permite a las
personas comunicarse. Estos elementos pueden ser palabras, señas o sonidos que en sí mismos son abstractos, sin
embargo, para las personas que forman parte de la sociedad, tienen un sentido, expresan un significado y señalan objetos
o acciones. Así es como se logra la comunicación entre ellos.
Es el conjunto de instrucciones a través del cual los humanos interactúan con las computadoras. Un lenguaje de
programación nos permite comunicarnos con las computadoras a través de algoritmos e instrucciones escritas en una
sintaxis que la computadora entiende e interpreta en lenguaje de máquina.
Existen docenas de lenguajes de programación utilizados en la industria, entre los populares tenemos:
Python
Python es uno de los lenguajes de programación más usados actualmente y su uso sigue creciendo. Posee unas
características muy potentes: es de código abierto, tiene una sintaxis sencilla y es fácil de entender, por lo que ahorra
tiempo y recursos.
Java
Java es un lenguaje de propósito general, orientado a objetos y diseñado para tener las dependencias de implementación
mínimas posibles. Con Java se pueden crear aplicaciones y procesos en múltiples dispositivos, Su ámbito de aplicación es
muy amplio, por lo que permite crear software para dispositivos móviles, terminales de venta, además de páginas web.
C#
Es otro de los mejores lenguajes de programación. Fue creado por Microsoft y está presente en entornos empresariales,
como instituciones gubernamentales, entidades bancarias o médicas, entre otros.
Aunque más allá de este tipo de aplicaciones, tiene también usos muy versátiles como el IoT, desarrollo de videojuegos,
web o aplicaciones móviles.
C++
Se caracteriza por ser extremadamente rápido y estable, lo que lo sitúa como uno de los mejores lenguajes de
programación y, por tanto, también uno de los lenguajes de programación más usados. Además, proporciona STL
(biblioteca de plantillas estándar), es decir, un conjunto de bibliotecas listas para usar para diferentes estructuras de
datos, operaciones aritméticas y algoritmos.
JavaScript
JavaScript es uno de los lenguajes de programación más usados para crear páginas web dinámicas. Permite a los
programadores implementar funciones complejas en las páginas web para añadirles más interactividad.
Una página dinámica es aquella que incorpora efectos, como texto que aparece y desaparece, animaciones, acciones que
se activan al pulsar botones y ventanas con mensajes de aviso al usuario.
Pseudocódigo
Podemos definirlo como una simple herramienta de programación que nos permite escribir en palabras (inglés o español)
el algoritmo ya definido, lo que nos permitirá su fácil interpretación a la vista de un usuario. Es de gran importancia
mencionar, que el pseudocódigo no es un lenguaje de programación que podrá ser interpretado en lenguaje de máquina
(para ello se deberá llevar a cabo el desarrollo de este en el lenguaje de programación de nuestra preferencia).
DIAGRAMA DE FLUJO
El diagrama de flujo es la representación gráfica del algoritmo, el cual favorece a la comprensión del proceso al mostrarlo
como un dibujo, permite identificar los problemas del proceso.
ESTRUCTURA SECUENCIAL
La estructura secuencial es aquella en la que una acción (instrucción) sigue a otra en secuencia. Las tareas se suceden de
tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta el fin del proceso.
Un problema de tipo cotidiano y sus respectivos algoritmos representados en Pseudocódigo y en diagramas de flujos:
Asignación
La asignación consiste, en el paso de valores o resultados a una zona de la memoria. Dicha zona será reconocida con el
nombre de la variable que recibe el valor. La asignación se puede clasificar de la siguiente forma:
Contador: Consiste en usarla como un verificador del número de veces que se realiza un proceso (a a + 1)
De trabajo: Donde puede recibir el resultado de una operación matemática que involucre muchas variables
(a c + b*2/4).
Consiste en mandar por un dispositivo de salida (por ej. monitor o impresora) un resultado o mensaje. Esta instrucción
presenta en pantalla el mensaje escrito entre comillas o el contenido de la variable. Este proceso se representa, así como
sigue:
Lectura o entrada de datos
La lectura o entrada de datos consiste en recibir desde un dispositivo de entrada (p.ej. el teclado) un valor o dato. Este
dato va a ser almacenado en la variable que aparece a continuación de la instrucción. Esta operación se representa así:
Siempre que necesitemos hacer un programa, tendremos que declarar variables para poder guardar la información que
introduzcamos al programa. Los tipos de datos básico soportados son los siguientes :
Ejemplo 1: Escriba un algoritmo que pregunte por dos números y muestre como resultado la suma de estos. Use
Pseudocódigo y diagrama de flujos.
Estructura condicional
Las estructuras condicionales sirven para la toma de decisiones en los algoritmos: Si ocurre algo entonces ejecutamos
unas sentencias y en caso contrario ejecutamos otras.
Toda toma de decisión tiene una evaluación a realizar para, en función de ella, tomar la decisión. Esa evaluación
generalmente compara una variable con otra o contra otro valor, para que en base al resultado de esta comparación, se
siga un curso de acción dentro del programa.
Las estructuras condicionales simples se les conoce como tomas de decisión y realizan una acción únicamente cuando la
expresión a evaluar resulta en un resultado positivo.
Las estructuras condicionales dobles permiten elegir entre dos opciones o alternativas posibles, en función del
cumplimiento o no de una determinada condición.
Por tanto, las estructuras condicionales dobles presentan dos caminos diferentes que puede tomar el flujo de ejecución
del programa. Si la expresión a evaluar sale con resultado positivo, el programa se irá por una rama y si tiene resultado
negativo se va por otra rama.
Las estructuras de comparación múltiples, son tomas de decisión especializadas que permiten comparar una variable
contra distintos posibles resultados, ejecutando para cada caso una serie de instrucciones específicas.
Por tanto, en estas estructuras condicionales podemos tener no solamente uno o dos caminos, sino tantos como
podamos llegar a necesitar en un algoritmo.
Ejemplo 1: Realizar un programa en donde se pide la edad del usuario; si es mayor de edad debe aparecer un mensaje
indicándolo. Expresarlo en Pseudocódigo y Diagrama de flujos.