Vous êtes sur la page 1sur 8

Unidad I.

Algoritmos
Prof. Marlenys Valladare
Maracaibo, 22/03/10
ALGORITMOS
La palabra algoritmo se deriva de la traduccin al latn de la palabra rabe alkhowarizmi,
nombre de un matemtico y astrnomo rabe que escribi un tratado sobre manipulacin de
nmeros y ecuaciones en el siglo IX.
Un algoritmo es una serie de pasos organizados o instrucciones que describe el proceso que se
debe seguir, para dar solucin a un problema especfico.
No podemos apartar nuestra vida de los algoritmos. Sin darnos cuenta nuestra vida cotidiana
est llena de ellos. Pero de alguna forma se hacen transparente.
Ejemplo de algoritmos cuando nos levantamos todos los das para ir a nuestro trabajo u lugar
donde estudiamos, hacemos un conjunto de pasos antes de llegar a nuestros trabajos.
Algoritmos en programacin
Un programa de computadora es un algoritmo que le dice a la computadora los pasos especficos
para llevar a cabo una tarea. Los algoritmos son rigurosamente definidos para que la
computadora pueda interpretarlos. El orden en que se ejecuta cada uno de los pasos que
constituyen un algoritmo es fundamental. El orden ms bsico es de arriba hacia abajo,
ejecutndose una instruccin tras otra de un cdigo. Pero un algoritmo puede variar en su flujo
u orden de ejecucin de pasos dependiendo de los valores de inicio o que entran durante su
ejecucin.
Las caractersticas fundamentales que debe cumplir todo algoritmo son:
Un algoritmo debe ser preciso e indicar el orden de realizacin de cada paso.
Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el
mismo resultado cada vez.
Un algoritmo debe ser finito. Si se sigue un algoritmo se debe terminar en algn
momento; o sea, debe tener un numero finito de pasos.
Legibles: El texto que lo describe debe ser claro, tal que permita entenderlo y leerlo
fcilmente.
Modificables: Estarn diseados de modo que sus posteriores modificaciones sean
fciles de realizar, incluso por programadores diferentes a sus propios autores.

Unidad I. Algoritmos
Prof. Marlenys Valladare

Los pasos para la resolucin de un problema son:


Diseo de algoritmo, que describe la secuencia ordenada de pasos que conducen a la
solucin de un problema dado. (Anlisis del problema y desarrollo del algoritmo).
Expresar el algoritmo como un programa de lenguaje de programacin adecuado. (Fase
de codificacin.)
Ejecucin y validacin del programa por la computadora.
Partes de un algoritmo
Todo algoritmo debe obedecer a la estructura bsica de un sistema, es decir: entrada, proceso
y salida. Donde:
Entrada: Corresponde al insumo, a los datos necesarios que requiere el proceso para
ofrecer los resultados esperados.
Proceso: Pasos necesarios para obtener la solucin del problema o la situacin planteada.
Salida: Resultados arrojados por el proceso como solucin.

Ejemplo: Preparar una receta de cocina


Entrada: ingrediente y utensilios empleados.
Proceso: elaboracin de la receta en la cocina.
Salida: terminacin del plato (por ejemplo, pasticho).
Tipos de algoritmos. Existen dos tipos y son llamados as por su naturaleza:
Cualitativos: Son aquellos en los que se describen los pasos utilizando slo palabras. Es
decir, en sus pasos o instrucciones para resolver un problema no estn involucrados
clculos numricos.
Ejemplos: instrucciones para armar un aeromodelo, desarrollar una actividad fsica o
encontrar un tesoro, cursar una carrera a nivel superior, tejer un suter entre otros.
Cuantitativos: Son aquellos en los que se utilizan clculos numricos para definir los
pasos del proceso.
Ejemplos: Calcular el factorial de un numero, solucin de la ecuacin de segundo grado,
encontrar el mnimo comn mltiplo entre otros.
Lenguajes Algortmicos: Un Lenguaje algortmico es una serie de smbolos y reglas que se

Unidad I. Algoritmos
Prof. Marlenys Valladare
utilizan para describir de manera explcita un proceso. Entre ellos se encuentran: Grficos y no
grficos.
Tipos de Lenguajes Algortmicos
Grficos: Es la representacin grfica de
las operaciones que realiza un algoritmo
(diagrama de flujo).

debe realizar un algoritmo


(pseudocodigo).
INICIO
Edad: Entero
ESCRIBA cual es tu edad?
Lea Edad
SI Edad >=18 entonces
ESCRIBA Eres mayor de Edad
FINSI
ESCRIBA fin del algoritmo
FIN

No Grficos: Representa en
forma descriptiva las operaciones que

El diagrama de flujo (DF) o Flowchart es una de las tcnicas de representacin de algoritmos


ms antigua, y consiste en representar mediante smbolos las operaciones a realizar. Por
ejemplo: el inicio y el fin del algoritmo se representan con un smbolo elptico, las entradas y
salidas con un paralelogramo, las decisiones con un rombo, los procesos con un rectngulo, etc.
Los Diagramas de flujo se dibujan generalmente usando algunos smbolos estndares; sin
embargo, algunos smbolos especiales pueden tambin ser desarrollados cuando sean requeridos.
Algunos smbolos son:
Nombre

Smbolo

Funcin

Terminal

Representa el inicio y fin de un programa. Tambin puede representar una


parada o interrupcin programada que sea necesaria realizar en un programa.

Entrada / salida

Cualquier tipo de introduccin de datos en la memoria desde los perifricos o


registro de informacin procesada en un perifrico.

Proceso

Cualquier tipo de operacin que pueda originar cambio de valor, formato o


posicin de la informacin almacenada en memoria, operaciones aritmticas, de
transformaciones, etc.

Decisin

Indica operaciones lgicas o de comparacin entre datos (normalmente dos) y


en funcin del resultado de la misma determina (normalmente si y no) cual de
los distintos caminos alternativos del programa se debe seguir

Unidad I. Algoritmos
Prof. Marlenys Valladare

Conector
Misma Pgina

Sirve para enlazar dos partes cualesquiera de un diagrama a travs de un


conector en la salida y otro conector en la entrada. Se refiere a la conexin en la
misma pgina del diagrama

Indicador de
direccin o
lnea de flujo

Indica el sentido de la ejecucin de las operaciones

Salida

Se utiliza en ocasiones en lugar del smbolo de salida. El dibujo representa un


pedazo de hoja. Es usado para mostrar datos o resultados.

Reglas para la creacin de Diagramas de flujo


1.
Los Diagramas de flujo deben escribirse de arriba hacia abajo, y/o de izquierda a
derecha.
2. Los smbolos se unen con lneas, las cuales tienen en la punta una flecha que indica la
direccin que fluye la informacin procesos, se deben de utilizar solamente lneas de flujo
horizontal o verticales (nunca diagonales).
3. Se debe evitar el cruce de lneas, para lo cual se quisiera separar el flujo del diagrama a
un sitio distinto, se pudiera realizar utilizando los conectores. Se debe tener en cuenta
que solo se van a utilizar conectores cuando sea estrictamente necesario.
4. No deben quedar lneas de flujo sin conectar
5. Todo texto escrito dentro de un smbolo debe ser legible, preciso, evitando el uso de
muchas palabras.
6. Todos los smbolos pueden tener ms de una lnea de entrada, a excepcin del smbolo
final.
7. Solo los smbolos de decisin pueden y deben tener ms de una lnea de flujo de salida.
Pseudocdigo: Es una herramienta de programacin en la que las instrucciones se describen en
palabras similares al ingls o espaol, que facilita tanto la escritura como la lectura de los
programas de computacin.
Ventajas de utilizar un Pseudocdigo a un Diagrama de Flujo
Ocupa menos espacio en una hoja de papel
Permite representar en forma fcil operaciones repetitivas complejas
Es muy fcil pasar de Pseudocdigo a un programa en algn lenguaje de programacin.
Si se siguen las reglas se puede observar claramente los niveles que tiene cada
operacin.
Ejemplo de algoritmo cualitativo.

Unidad I. Algoritmos
Prof. Marlenys Valladare
Observe el siguiente problema de tipo cotidiano y sus respectivos algoritmos representados
en Pseudocdigo y en diagramas de flujos:
Tengo un telfono y necesito llamar a alguien pero no s cmo hacerlo.

Conceptos fundamentales para construir algoritmos cuantitativos.


Tipos de datos: Numricos (enteros y reales); lgicos; carcter y cadenas de caracteres.
Identificador: Los datos a procesar por un computador, deben almacenarse en casillas o
celdas de memoria para su posterior utilizacin.
Declaracin de variables: Es un proceso que consiste en listar al principio del algoritmo
todas las variables (identificador) que se usaran, adems de colocar el nombre de la
variable que debe decir qu tipo de dato se almacenar ah (real, entero, lgico, otros).
Contador: entero
Edad, I: entero
Direccin: cadena_de_caracteres
Salario_Basico: real
Opcin: carcter

Variable: Objetos que pueden cambiar su valor durante la ejecucin del programa.
Constante: Son datos que no cambian durante la ejecucin de un programa.
Bloque de asignacin: La asignacin consiste, en el paso de valores o resultados a una
zona de memoria. Dicha zona ser reconocida con el nombre de la variable (identificador)
que recibe el valor. Un bloque de asignacin se utiliza para asignar valores o expresiones
a una variable.
Escritura o salida de datos : Consiste en mandar por un dispositivo de salida (ej. monitor
o impresora) un resultado o mensaje. Esta instruccin presenta en pantalla el mensaje
escrito entre comillas o el contenido de la variable. Este proceso se representa as como
sigue:

Unidad I. Algoritmos
Prof. Marlenys Valladare

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 continuacin de la instruccin. Esta operacin se representa
as:

Ejemplos de algoritmos cuantitativos


1) Escriba un algoritmo que pregunte por dos nmeros y muestre como resultado la suma de
estos. Use Pseudocdigo y diagrama de flujos.

Unidad I. Algoritmos
Prof. Marlenys Valladare
2) Escriba un algoritmo que permita conocer el rea de un tringulo a partir de la base y la
altura. Exprese el algoritmo usando Pseudocdigo y diagrama de flujos.

Ejercicios propuestos
1.
2.
3.

4.
5.

6.

7.

8.

Leer la base y la altura de un rectngulo. Calcular y mostrar por pantalla el rea del
mismo. La frmula del rea es rea=base *altura
Un usuario solicita un libro para la lectura, si el libro se encuentra en la biblioteca se
presta; de lo contrario se devuelve la ficha de solicitud.
Construir un algoritmo el sueldo bsico de un obrero, si para ello se requiere ingresar
por teclado la tarifa diaria y el nmero de horas trabajadas. La frmula del sueldo bsico es:
sueldo =tarifa diaria* nmero de horas.
Escriba un algoritmo que lea el nombre y la fecha de nacimiento de una persona. Calcule y
muestre el nombre y la edad del mismo.
Realice un algoritmo que calcule e imprima el promedio de notas obtenidas por un alumno
en un semestre X, los datos de entrada son: nota final de: matemticas, ingles, contabilidad e
informtica.
Disee un algoritmo que calcule el rea y el permetro de un rectngulo. Los datos de
entrada son: base y altura. Las formulas son:
rea= base*altura;
permetro=2*(base +
altura)
Se desea otorgar una comisin a un vendedor, que ser un porcentaje del 10% de sus
tres ventas. Realice un algoritmo que calcule e imprima dicha comisin conociendo el nombre
del vendedor y el monto de cada una de sus ventas que ha realizado.
Dado un nmero determinado de das, calcule e imprima cuantos segundos tienen estos
das.

Unidad I. Algoritmos
Prof. Marlenys Valladare
9.

Hacer el algoritmo para escribir un programa que indique si un nmero ingresado por el
teclado es positivo.
10. Hacer un algoritmo para un programa que calcule el pago que hacen un grupo de personas
para ver una pelcula teniendo en cuenta que si el grupo es menor de 8 personas el pago es de
30 bs por persona y para grupos de 8 personas o ms el pago es 20 bs por persona.
11. Leer el sueldo de dos empleados con aos de servicios en una organizacin. Si aos de
servicios en mayor a 5 aplicarles un aumento 15% sobre el sueldo sino el 10%.

Vous aimerez peut-être aussi