Sie sind auf Seite 1von 21

UNIVERSIDAD AUTONOMA GABRIEL RENE MORENO

FACULTAD DE CIENCIAS EXACTAS Y TECNOLOGIAS


Carrera de Ingeniería Informática

Seminario de Grado
Modulo: Algoritmos y Estructura de Datos

“Tema 1. Conceptos y Características de los Algoritmos”

Docente: Ing. Ubaldo Pérez Ferreira


E-mail: jesser92@hotmail.com

Santa Cruz de la Sierra – Bolivia ©


2008
Conceptos y Características de los Algoritmos

La Algoritmia es la Ciencia que estudia los algoritmos, se


consideran a Euclide (griego siglo IV a.C) y a Mohammed
al-Khowarizmi (Persa siglo IX) como los padres de la
Algoritmia.

El apellido al-Khowarizmi traducido al latín “Algoritmus”


derivo en “algoritmo”.
Conceptos y Características de los Algoritmos

Para qué sirven los Algoritmos?.

Sirven para resolución de problemas utilizando algún


método (secuencia de pasos).

Diseño de Programa de
Problema Computación
Algoritmo

Sin algoritmo, no hay programa de computación


Conceptos y Características de los Algoritmos

Para qué sirven los Algoritmos?.

Los algoritmos son independiente tanto del lenguaje de


computación en el que se expresa, como de la
computadora donde se ejecuta.

En algunos casos la Ciencias de Computación es vista


como el “Estudio de Algoritmos”

Este estudio abarca 4 áreas:


Conceptos y Características de los Algoritmos

a) Maquinas para ejecutar algoritmos.


Conceptos y Características de los Algoritmos

b) Lenguajes para la descripción de algoritmos.

Fuente

Compilador

Objeto
Conceptos y Características de los Algoritmos

c) Fundamentos de Algoritmos.

¿Cuán complejo es un trabajo para la computadora?

Lógica Nuestro
interés
Complejidad Tiempo
Recursos
Conceptos y Características de los Algoritmos

c) Fundamentos de Algoritmos.

¿Cuál es el mínimo numero de operaciones para que


cualquier algoritmo ejecute cierta función?

For i=1 to m
for j=1 to n
x=x+1
end for
End for

Tiempo = m x n
Conceptos y Características de los Algoritmos

d) Análisis de Algoritmos.

Algoritmo para buscar x en el arreglo A

x=55 x=55
For i=1 to n For i=1 to n
if x=A(i) then if x=A(i) then
y=A(i) y=A(i)
end if exit for
End for end if

Tiempo n End for


Tiempo n/2
Conceptos y Características de los Algoritmos

Definición de Algoritmo.
“Es un sistema riguroso y preciso que define una secuencia de
operaciones y después de un determinado numero finito de
pasos proporciona el objetivo deseado, el resultado, y debe
cumplir los siguientes criterios”.

•Salida. Debe producir alguna Salida


•Entrada. Debe tener por lo menos una entrada
•Finitud. Debe terminar en algún momento.
•Exactitud. Debe ser claro y no ambiguo.
•Efectividad. Se pueda resolver manualmente.

Algunos Ej.
Conceptos y Características de los Algoritmos

El Lenguaje SPARKS.
“Es un lenguaje de tipo seudo código”. Structured
Programing
And
Reazonably
Komplete
Set
Procesador

Programa Programa Programa


Compilador
SPARK Fuente Objeto

Traducción
Manual
Conceptos y Características de los Algoritmos

Sintaxis.
1) variable::=expresion
2) Nombre de Variables
variable>::=<expresion>*(<expresion>!<numero>)
3) Operadores Logicos
and, or y not
4) Operadores relacionales
<, >, <>, <=, >=, =
Conceptos y Características de los Algoritmos

Sintaxis.

5) if Predicado then
S1
Else
S2
6) While Predicado
S1
end while
Conceptos y Características de los Algoritmos

Sintaxis.

7) Repeat
S1
Until Predicado
8) loop
S1
forever
9) Go to label
label:
Conceptos y Características de los Algoritmos

Sintaxis.

10) For v1=v0 to vf by incremento do


S1
End for
11) Case
:Pred1: S1

:Predn: Sn
Else
:Predn+1: Sn+1
Conceptos y Características de los Algoritmos

Sintaxis.

12) Procedimientos
Procedure nombre(lista de argumentos)
S
return (expresion)
End
llamada
call nombre(lista de argumentos)
Conceptos y Características de los Algoritmos

Sintaxis.

12) Procedimientos
Procedure nombre(lista de argumentos)
S
return (expresion)
End
llamada
call nombre(lista de argumentos)
Conceptos y Características de los Algoritmos

Sintaxis.

13) Lectura/Escritura
Read(lista) Nota: se asume que los datos son
Print(lista) enteros por defecto, cuaquier otro tipo
de datos se declara como sigue:
14) Comentarios
Declare x:real
// //
Declare A[0..n]:real
{ }
(* *)
/* */
Conceptos y Características de los Algoritmos

Ejemplo. Búsqueda Binaria

A x

1 n

Donde j (1<=j<=n)
Conceptos y Características de los Algoritmos

Ejemplo. Búsqueda Binaria


Procedure BusquedaBinaria(A,n,x,j)
menor := 1 superior := n
while menor <= superior do
mitad := (menor + superior)/2
Case
:x > A[mitad]: menor := mitad+1
:x < A[mitad]: supeior := mitad-1
Else
j := mitad return
Ens case
End while
End Procedure
Conceptos y Características de los Algoritmos

Ejercicios.
Diseñar los algoritmos correspondientes para imprimir la
siguiente serie de números:
b) 1,3,5,7,…
c) 2,4,6,8,…
d) 1, 4, 9, 16, 25, ...
e) 1, 2, 6, 24, 120, 720, ...
f) 1,1,2,1,2,3,1,2,3,4,1,2,3,4,5, …
g) 2,1,1,1,5,1,1,1,8,1,1,1, …
h) 3,2,1,0,0,1,2,3,3,2,1,0,…
i) 0,1,1,2,3,5,8,11,…

Das könnte Ihnen auch gefallen