ALGORITMO
Un ordenador es capaz de realizar “solo” determinadas acciones sencillas, tales como sumar, comparar
o transferir datos, pero los problemas que normalmente interesa resolver son mas complejos.
Para resolver un problema real es necesario, en primer lugar, encontrar un método de resolución y,posteriormente, determinar la sucesión de acciones sencillas (susceptibles de ser ejecutadas por un
ordenador) en que se descompone dicho método.
No todos los métodos de solución de un problema pueden ser puestos es practica en un ordenador.
Para que un procedimiento pueda ser implantado en un ordenador debe ser:
Preciso: estar compuesto de pasos bien definidos (no ambiguos) y ordenados.
Definido: si se sigue dos veces, se obtiene el mismo resultado cada vez.
Finito: tener un n´umero finito de pasos.
Un procedimiento o método para resolver un problema que cumpla los requisitos anteriores se dice
que es un algoritmo. Se puede dar por tanto la siguiente definicion:
Un algoritmo es un metodo para resolver un problema mediante una secuencia de pasos
bien definidos, ordenados y finitos.
Para que se pueda ejecutar el algoritmo es preciso, adem´as, que se disponga de las “herramientas”
adecuadas para llevar a cabo cada uno de los pasos. Si no es as´ı, estos deberan, a su vez, ser
descompuestos en una secuencia (algoritmo) de pasos mas simples que sı se puedan llevar a cabo.
Un programa de ordenador es una sucesión de ordenes que describen un algoritmo,
escritas de forma que puedan ser entendidas por el ordenador.
En un algoritmo (y por tanto en un programa) se distinguen las siguientes acciones:
Entrada: es la información de partida que necesita el algoritmo para arrancar.
Proceso: es el conjunto de todas las operaciones a realizar.
Salida: son los resultados obtenidos.
Estructuras selectivas: simple, doble y múltiple.
La especificación formal de algoritmos tiene realmente utilidad cuando el algoritmo requiere una descripción más complicada que una lista sencilla de instrucciones. Este es el caso cuando existen un número de posibles alternativas resultantes de la evaluación de una determinada condición.
Estas estructuras se identifican porque en la fase de solución del problema existe algún punto en el cual es necesario establecer una pregunta, para decidir si ciertas acciones d eben realizarse o no.
Las condiciones se especifican usando expresiones lógicas. La representación de una estructura selectiva se hace con palabras en pseudocódigo (if - then - else o en español si - entonces - sino) y en flujograma con una figura geométrica en forma de rombo.
Las estructuras selectivas o alternativas se clasifican en:
a) Simples
b) Dobles
C) Múltiples
Estructura simple: IF
Este es el tipo mas sencillo de estructura condicional. Sirve para implementar acciones condicionales
del tipo siguiente:
Si se verifica una determinada condicion, ejecutar una serie de instrucciones y luego seguir
adelante.
Si la condicion NO se cumple, NO se ejecutan dichas instrucciones y se sigue adelante.
Ejemplo 1.
Construir un algoritmo tal, que dado como dato la calificación de un alumno en un examen, escriba "Aprobado" en caso que esa calificación fuese mayor que 8.
Salidas: mensaje de aprobado si se cumple la condición.
Entradas: calificación
Datos adicionales: un alumno aprueba si la calificación es mayor que 8
Variables:
Cal = calificación
Algoritmo:
Inicio
Leer (cal)
Si cal > 8 entonces
Escribir ("aprobado")
Fin_si
Estructura de selección doble.
Son estructuras lógicas que permiten controlar la ejecución de varias acciones y se utilizan cuando se tienen dos opciones de acción, por la naturaleza de estas se debe ejecutar una o la otra, pero no ambas a la vez, es decir, son mutuamente excluyentes.
Representación pseudocodificada.
Ejemplo 1
Dado como dato la calificación de un alumno en un examen, escriba "aprobado" si su calificación es mayor que 8 y "Reprobado" en caso contrario.
Leer (cal)
Si cal > 8 entonces
Escribir ("aprobado")
Sino
Escribir ("reprobado")
Fin_si
Fin
Estructura múltiple.
Con frecuencia es necesario que existan más de dos elecciones posibles. Este problema se podría resolver por estructuras selectivas simples o dobles, anidadas o en cascada, pero si el número de alternativas es grande puede plantear serios problemas de escritura y de legibilidad.
Ejemplo 1:
Diseñar un algoritmo que depende de su calificacion nos de un mensaje.
Proceso Califi_caion
escribir " ingrese la calificacion"
leer cali
caso cali de
10: escribir " felicidades"
9: escribir " Muy bien "
8: escribir " Bien "
7: escribir " sigue adelante "
6: escribir " puedes mejorar"
fin caso que
escribir " Lo siento, reprobastes"
FinProceso
0 comentarios:
Publicar un comentario