Algoritmo: Secuencia finita
(limitada) de pasos ordenados para la resolución de un problema.
Como lo dice su definición un algoritmo es una
serie de pasos o instrucciones que utilizamos para resolver determinada
situación. Este término no solamente se aplica a problemas
computacionales, sino que es válido para cualquier tipo de situación de la vida
cotidiana. Por ejemplo, a la hora de cocinar (situación) utilizamos una
receta (algoritmo) para llevar a cabo el proceso. A la hora de armar o
instalar algún aparato electrónico leemos el manual de instrucciones, y de la
misma manera aplicamos algoritmos a casi todo lo que realizamos.
Ejemplo: Problema: Abrir una puerta cerrada con llave.
1) Tomar el manojo de llaves del bolsillo.
2) Seleccionar la llave que corresponda. 3) Introducir la llave en la cerradura.
4) Girar la llave en sentido anti horario.
5) etc., etc.
Puede parecer un ejemplo muy tonto (de hecho lo
es), pero es algo que realizamos prácticamente todos los días. Y aunque no
necesitamos de ningún manual, y hasta ni siquiera necesitamos pensar para
hacerlo, es un algoritmo que ya tenemos incorporado y lo aplicamos de manera inconsciente,
es decir nuestro cerebro esta “programado” para realizar esas
acciones. A esto me refería cuando mencione que utilizamos algoritmos para casi
todo. La pregunta sería: ¿Como hago para que la computadora me entienda?
4
lenguaje de programación
De mas esta decir que la computadora no
comprende ningún lenguaje humano, es por eso que un programa
informático debe estar escrito en lenguaje de máquina (unos y ceros).
Por supuesto que no somos nosotros quienes escribimos en ese lenguaje, sería
una tarea muy tediosa y molesta. Los programadores escriben sus algoritmos en
algún lenguaje de programación (C++, java, Basic) que resulta mucho más
amigable, y este luego es “traducido” por un programa a instrucciones de máquina
para que la computadora sea capaz de leerlo y ejecutarlo.
Antes de comenzar a explicar cómo se desarrolla
un algoritmo necesitamos definir el término variable. Se trata de un
símbolo que representa a un elemento no definido
dentro de un determinado conjunto.
Por ejemplo en matemática solemos utilizar el
símbolo ‘x’ para representar un valor dentro del conjunto de
los números. Como la misma palabra lo indica el valor de ‘x’ puede
variar. Es decir, su valor no se encuentra explicito, sino que puede tomar
cualquier valor (numérico) dependiendo de diversos factores.
En programación una variable,
representa un espacio en memoria RAM al que le podemos asignar
diferentes valores (datos) de manera temporal. Las variables pueden ser de
diferentes tipos, es decir representar elementos dentro de
diferentes conjuntos.
Existen en programación tres tipos básicos de
datos; numéricos, alfanuméricos y lógicos
o booleanos. El tipo de dato numérico, a su vez
puede dividirse en números enteros y números con coma (reales).
Por ejemplo decimos que 54 es un número entero, y 45,32 es
un número real.
Una variable alfanumérica puede
contener cualquier carácter o cadena de caracteres que admita nuestra
computadora. Por ejemplo “Hola que tal”, “a”, “4jks*”, “123”,
etc.
Una variable lógica o booleana
puede contener solo dos valores diferentes; verdadero o falso.
Cabe destacar que una variable puede contener
valores de un solo tipo de datos. Es decir, a una variable de tipo entera no
podemos asignarle una cadena de caracteres, solo números enteros.
Imaginemos una variable como
una botella. El contenido de la misma puede variar (agua, gaseosa, jugo), pero
su tipo de contenido siempre va a ser líquido. Sabemos que en
realidad podemos poner otra cosa, arena por ejemplo, pero no es el fin para el
que fue creada.
Podemos identificar tres tipos de sentencias
simples.
Lectura:
Se lee un determinado valor desde el teclado y
lo almacenamos en una variable, en este caso la variable n.
Escritura
Mostramos por pantalla una frase, el contenido
de alguna variable, o ambas.
Asignación
Se le asigna a una variable el contenido de otra
variable, el resultado de alguna operación aritmética o lógica, o algún valor
en particular
Veamos algunos ejemplos de algoritmos simples
para tratar de dejar en claro lo visto hasta ahora. Por ahora no veremos ningún
lenguaje de programación en particular si no que vamos a utilizar diagramas y
pseudocódigo para
facilitar la comprensión de los algoritmos.
Problema 1
Realice un algoritmo que pida al usuario su
nombre y luego escriba en la pantalla un saludo.
Pseudocódigo
Inicio
mostrar ("Ingrese nombre") leer (nombre) mostrar ("Hola",nombre)
Fin
Declaración en el lenguaje java:
public static void imprimir () { System.out.println("Ingrese su nombre"); Scanner S = new Scanner(System.in); nombre = S.nextInt(); System.out.println ("Hola",nombre); }
Problema 2 Realice un algoritmo que solicite al usuario su edad y muestre por pantalla cuantos días ha vivido aproximadamente.
Pseudocódigo
Inicio
mostrar ("Ingrese su edad") leer (edad) dias = edad*365 mostrar ("Ud ha vivido",dias,"dias")
Fin
Partiendo del primer ejemplo en lenguje java, Pasar el problema 2 de pseudocodigo a lenguaje java en la siguiente herramienta: http://ideone.com/
|