Professional Documents
Culture Documents
ALGORITMOS Y
ESTRUCTURA DE DATOS
www.evira.net
I
II
III
IV
V
VI
VII
VIII
IX
ver. 1.0.0
Pg. 01
www.evira.net
SESION
01
Dato:
- Un dato es la representacin de un hecho real.
- Son smbolos concretos que pueden ser reconocidos por un computador.
- Un dato para una computadora es una secuencia de bits (0 1).
- Un dato de entrada se transforma por el programa despus de etapas intermedias en datos de salida.
Ejemplos de datos:
- Nota de un alumno
- Edad de una persona
- Nombre de una persona - Temperatura del da, etc.
Cerrar
Pg. 02
www.evira.net
Tipos de Datos
1) Datos Estticos
1.1 Datos Simples
1.1.1
Numricos
1.1.1.1 Numricos enteros (integer)
1.1.1.2 Numricos reales (real)
1.1.2
1.1.3
1.2
Cerrar
Lgicos (booleanos)
Carcter (char)
Pg. 03
www.evira.net
2)
Datos Dinmicos
2.1 Punteros (pointiers)
2.2 Pilas/colas
2.3 Listas: simples/dobles
2.4 Arboles
2.5 Grafos
Ejemplo:
i) -325
ii) 580
Los enteros mximo y mnimo de una computadora, suele estar dentro del rango:
-32768
Mnimo
Cerrar
32767
Mximo
Ejemplos:
i) 38.4
ii) -106.3
iii) 0.005
www.evira.net
nE dd
En Pascal
en C++
Donde:
Cerrar
Pg. 05
www.evira.net
Ejemplo:
1.6125 * 10-10
5 * 1012
0.0005
1.6125 E-10
5E12
5 * 10-4
5 E-4
1.1.2 Datos Lgicos
Un dato lgico o booleano es aquel que puede tomar
nicamente dos valores:
- Verdadero (true)
- Falso
(false)
Se utiliza para representar alternativas:
i) Par/impar
ii) Encontrado/no encontrado
iii) Ocupado/no-ocupado
1.1.3 Datos Tipo Caracter
Un dato tipo caracter (char) contiene un solo caracter delimitados por simples apstrofes.
La mayora de computadoras reconoce:
Cerrar
Pg. 06
www.evira.net
Caracteres Alfabticos:
A, B, C, ... Z
Caracteres Numricos:
0, 1, 2, ..., 9
Caracteres Especiales:
+, -, /, *, ^, <, <=, >, .. etc.
El nmero de caracteres especiales vara de acuerdo
a la versin del Lenguaje de Programacin.
Ejemplos:
i) A, C, Z
ii) 1, O
iii) *, /, +
Cerrar
Pg. 07
www.evira.net
ALGORITMOS
Concepto de Algoritmos
Es una secuencia ordenada y cronolgica de pasos que llevan a la solucin de un problema a la ejecucin de una tarea.
Caractersticas
1. Es finito y tiene un orden. (nmero finito de pasos en un tiempo
limitado).
2. Es definido. Si se sigue el mismo algoritmo dos veces, se debe obtener el mismo resultado.
3. Es conciso. Tiene una entrada - salida.
Cerrar
Pg. 08
www.evira.net
Datos de entrada
PROCESOS
Datos de salida
Observacin:
No existe una regla prctica para crear algoritmos sin embargo las siguientes preguntas nos ayudan en su formulacin.
Preguntas que se necesitan formular antes de construir un
algoritmo
cules son los datos de entrada?
qu tipo de informacin nos piden? (resultado)
en base a los datos de entrada, cuales son los procesos que nos generan las salidas requeridas?
Cerrar
Pg. 09
www.evira.net
Ejemplo de Algoritmos:
i) Los planos de construccin
ii) Recetas de cocina
iii) Instrucciones para armar un juguete
iv) Se desea Leer 3 nmeros y luego calcular el promedio
Salida
Datos de entrada
a, b, c
(nmeros)
PROCESO
prom
(Promedio)
prom (a+b+c) /3
Algoritmo Promedio
1. Leer (a,b,c)
2. Calcular PROM! (a+b+c)/3
3. Escribir (el promedio es: + PROM)
4. fin
Cerrar
Pg. 10
www.evira.net
v)
Algoritmo Pelcula
1. Ir al cine
2. Comprar una entrada
3. Ver la Pelcula
4. Regresar a casa
Datos de entrada
r,h,
PROCESO
volumen
volum *(radioh2) *h
Algoritmo Volum_cilindro
1. def. Variables
radio, altura, volumen: real
2. Leer (radio, altura)
3. volumen 3.1416 * (radio*radio) * altura
4. escribir (volumen)
5. fin
Cerrar
Pg. 11
www.evira.net
Ejemplo:
i) Algoritmo promedio
2) Bloque algortmico
2.1 Seccin de declaracin de variables
Se define las variables o estructuras de datos que se necesitan
Cerrar
Pg. 12
www.evira.net
En Pseudocdigo:
Definir variables
nomb_variable_1 : tipo_1
nomb_variable_2 : tipo_2
nomb_variable_n : tipo_n
2.2 Acciones ejecutables
Leer, Calcular, Imprimir
i) Lectura de datos
Se introducen los datos disponibles mediante una operacin
de lectura en el orden dado.
Ejemplo:
Leer (nombre, hora_tra, cuota_ho)
Cerrar
Pg. 13
www.evira.net
ii) Calcular o procesar
Se procesa la entrada mediante clculos para producir la
salida.
iii) Salida datos
Dar salida a la informacin obtenida
escribir (nombre, sueldo)
Conceptos Bsicos Utilizados en Algoritmos
1. Operador Asignacin:
indica una operacin de reemplazo o asignacin.
Formato:
nombre_variable expresin
:= pascal
= basic, fortran
Cerrar
Pueden ser:
Constante
Variable
Expresin algebraica
Pg. 14
www.evira.net
Ejemplo:
1. b 15
2. n n+1
3. prom (12*8)/(5*3)
4. x Av. Tupac Amaru 210
2. Identificador
Conjunto de caracteres que debe cumplir con lo siguiente:
- Debe empezar con una letra (a-z), apartir del segundo caracter puede usar letras, dgitos (0-9) y no debe tener espacios en
blanco (b).
/
- Solo se puede usar letras, dgitos y el subrayado (-).
- Debe ser diferente de las palabras reservadas empleadas en
algoritmos.
- Deben ser significativos, es decir tener relacin con el objeto
que representan.
Ejercicio:
i) sum a
ii) orden 2
iii) leer
Cerrar
iv) sum1
v) sum_2
vi) pro2
Pg. 15
www.evira.net
2.1 Constante
Es un identificador vlido, cuyo valor no cambia durante la ejecucin del algoritmo.
Formato:
Const
Nomb_cost = valor
Ejemplo:
1. Definicion de variables
A = 10 (constante entera)
LETRA = m (constante caracter)
PI = 3.1416 (constate real)
2.2 Variable
Es un identificador vlido cuyo valor puede cambiar durante la
ejecucin del algoritmo.
Cerrar
Formato:
Var
Nomb_var : tipo_dato
Pg. 16
www.evira.net
Ejemplo:
1. Definicin de variables
m
: entero
x, y, z : real
car
: caracter
L
: lgico
2.3 Acumulador
Es una variable que incrementa valores variables a una determinada variable.
Formato:
<variable> <variable> + <valor variable>
valor actual
valor antiguo
(o valor presente) (o inmediato anterior)
Cerrar
Ejemplo:
suma 0 (inicializando suma)
num 5
suma suma + num (suma tiene el valor 5)
Pg. 17
www.evira.net
num 6
suma suma + num (suma tiene el valor 11)
num 3
suma suma + num (suma tiene el valor 14)
2.3.1 Contador
Es un caso particular de un acumulador, incrementa
valores constantes a una determinada variable.
Formato:
<variable> <variable> + k
valor actual
Cerrar
valor antiguo
Ejemplo:
ii+1
nn+2
Pg. 18
www.evira.net
3. Operadores
3.1 Aritmticos
+ : suma
- : resta
/ : divisin real
* : multiplicacin
Ejemplo:
2*6 = 12;
12/3 = 4.0;
Ejemplo:
5 DIV 2 = 2
5 MOD 2 = 1
Cerrar
Pg. 19
www.evira.net
3.2 Operadores de Relacin o de Comparacin
= igual
> mayor que
/= diferente
menor o igual que
< menor que mayor o igual que
3.3 Operadores Lgicos
negacin
^ y logico (AND)
v o logico (OR)
Ejemplo:
Leer (nota)
14
v
sumaA sumaA + nota
fin_si
Cerrar
Pg. 20
www.evira.net
3.4 Jerarqua de los Operadores
Prioridad
Operador
1
2
()
3
div, /, *, mod, ^
4
+, -, v
5
=, /=, <, >, ,
Cerrar
Pg. 21
www.evira.net
Ejemplo:
T 6, Y 3, R 4, S 2
Z (T * (y-2) + r) / s
Z (6 * (3 - 2) + 4) / 2
Z (6 * 1 + 4)/2
Z 10/2
Z5
2.
Cerrar
www.evira.net
M -3 * 7 + (2 h3) / 4 - 6
M -21 + 8/4 - 6
M -21 + 2 - 6
M -25
3.
Argumento
y tipo
u : exp. real o entera
u : exp. real o entera
u : exp. real
u : exp. real
u : exp. real
Pg. 23
www.evira.net
FIN DE PRESENTACION
Cerrar