Beruflich Dokumente
Kultur Dokumente
Nociones fundamentales
Algoritmo
Esta presentacin
Nocin de algoritmo
Objetos y acciones elementales
Esquemas condicionales
Iteraciones
Algoritmo
Nocin de algoritmo:
Procesador, entorno, acciones
Acciones primitivas
Anlisis descendente
Objetivo de la programacin
Algoritmo Procesador, entorno, acciones
Enunciado 1 Enunciado 2
Preparacin de un omelette de 6 Clculo de la media de tres nmeros
huevos con una calculadora
a: pulsar la tecla C;
a: romper seis huevos en un plato;
b: ingresar el primer nmero;
b: batir las claras y las yemas con
un tenedor; c: pulsar la tecla + ;
o
rn
to
NO 1 n
Algoritmo Procesador, entorno, acciones
La ejecucin de un trabajo no elemental, supone cierta
progresin hacia el fin deseado.
El enunciado
Sin embargo, eldenmero
una accin puede aparecer
de apariciones de una
varias veces
accin, en la descripcin
no corresponde de un trabajo.
forzosamente a la
(Acciones
cantidad c y e, Enunciado
de ejecuciones 2)
de la misma.
Algoritmo Procesador, entorno, acciones
2 Ejecucin:
x
2 x
y 6
y 2
Enunciado 3 repetir x 5 veces
y
z
Sin embargo, el nmero de apariciones de una
accin, no corresponde forzosamente a la
cantidad de ejecuciones de la misma.
Algoritmo
Nocin de algoritmo:
Procesador, entorno, acciones
Acciones primitivas
Anlisis descendente
Objetivo de la programacin
Algoritmo Acciones primitivas
En los Enunciados 1 y 2 se ha supuesto que el
procesador saba ejecutar las acciones enumeradas.
informacin adicional.
Algoritmo Acciones primitivas
En el Enunciado 3, el procesador no sabr ejecutar la
accin repetir 5 veces, si sta no es una primitiva.
condicin
no realizada
hasta que condicin evaluar condicin
condicin
realizada
Algoritmo
Nocin de algoritmo:
Procesador, entorno, acciones
Acciones primitivas
Anlisis descendente
Objetivo de la programacin
Algoritmo Anlisis descendente
Metodologa:
Uno de los mtodos para obtener la descomposi-
cin de una accin en acciones primitivas es el
Anlisis descendente.
e
de s
nt
en i s i
(Ei) T (Ef)
Entorno:
. Diez paquetes de hojas numeradas, apilados sobre un
escritorio.
. Una grapadora
. Diez mesas numeradas de 1 a 10.
Algoritmo Anlisis descendente
Algoritmo Anlisis descendente
A
B C
Repartir los paquetes a Reunir y grapar los
razn de un paquete por ejemplares y ponerlos
mesa, tal que el paquete de sobre el escritorio.
hojas i quede en la mesa i.
Algoritmo Anlisis descendente
Algoritmo Anlisis descendente
Repetir
B1: tomar el paquete situado encima de la pila
sobre el escritorio
B B2: ir a la mesa cuyo nmero es el mismo que
el de las hojas del paquete
B3: poner el paquete sobre la mesa
A hasta que (B4) se acabe la pila que hay sobre el
C11:escritorio.
colocarse en la mesa N 1
C12: tomar una hoja de esa mesa
C1 Repetir
C Repetir
C13: ir a la mesa siguiente
C14: tomar una hoja de esa mesa
C1: tomar las hojas
hasta que necesarias
la mesa sea lapara
N 10un ejemplar
C2: grapar el ejemplar
C3: ponerlo sobre el escritorio
hasta que (C4) una de las mesas quede sin hojas.
Algoritmo Anlisis descendente
Inicio
Repetir
tomar el paquete situado encima de la pila sobre el escritorio
ir a la mesa cuyo nmero es igual al de las hojas del paquete
poner el paquete sobre la mesa
hasta que se acabe la pila que hay sobre el escritorio.
Repetir
colocarse en la mesa N 1
tomar una hoja de esa mesa
Repetir
ir a la mesa siguiente
tomar una hoja de esa mesa
hasta que la mesa sea la N 10
grapar el ejemplar
ponerlo sobre el escritorio
hasta que una de las mesas quede sin hojas
Fin
Nocin de Algoritmo
Primera definicin:
o
it m
un algoritmo de tratamiento es el
A
Nocin de algoritmo:
Procesador, entorno, acciones
Acciones primitivas
Anlisis descendente
Objetivo de la programacin
Objetivo de la programacin
Fase 1 Fase 2
Etapa ms difcil
No presenta mayores
dificultades
Herramientas
Nocin de algoritmo
Objetos y acciones elementales
Esquemas condicionales
Iteraciones
Algoritmo
Objetos y acciones elementales:
Formalizacin
Objetos en un entorno
Utilizacin de objetos
Acciones y algoritmos
Constantes y variables
Tipos de objetos
Contexto y herramientas
Accin leer, accin escribir, accin de
asignacin, expresiones aritmticas
Formalizacin Objetos en un entorno
Repaso: ACCIONES:
* colocarse en la mesa N 1
* tomar el paquete situado encima de la pila
* ir a la mesa siguiente
* ingresar el primer nmero
* pulsar la tecla 3
* pulsar la tecla +
El primer
La tecla 3 La tecla +
nmero
Formalizacin Objetos en un entorno
El primer
La tecla 3 La tecla +
nmero
En cadacitados
instante, todo
delobjeto del entorno
ValorDos de los objetos
Cada objeto tiene
tiene una
son
utilizacin
un valor
tipo mesa.
particular.
susceptible de variar
Las utilizaciones
despusnode
son intercambiables.
la ejecucin de una accin
Representan, en cada instante, una de las mesas
del grupo de 10 mesas del problema.
Formalizacin Objetos en un entorno
Objeto: el paquete encima de la pila
Nombre
Tipo 5
3 3
Valor
7 7
6 6
1 1
Se ejecuta
Antes de la la accin Despus de
ejecucin la ejecucin
de la accin de la accin
Pasos:
Conocer el procesador
Describir el entorno
Generar el algoritmo
Formalizacin Objetos en un entorno
Conocer el procesador
Describir el entorno
Si es 3 1+2+3=6
Se ejecutar
Si es 5 1 + 2 + 3 + 4 + 5 = 15
etc.
Formalizacin Objetos en un entorno
Describir el entorno
Describir el entorno
Desventajas objeto
de la que contiene losmuchos objetos
Requiere
ENTERO
valores sucesivos de 1 a n
primera alternativa: El nmero de objetos es variable
Observacin: S ENTERO
Generar el algoritmo
anlogamente,
sea
ser sde
elun para
valor obtener, porantes
(indeterminado) acumulacin,
el valor necesario, por
objeto queloacaba
tanto,dede S de
ser en la
la
definido
el valoracumulacin,
creacin deseado
de en S, esanecesario
el valor dar,
0 pre-
eseste objeto, unaS acumulacin en S
S
siempre dar
indeterminado
viamente
de un enteros
todos los valor determinado
de 1 a n, noa producir
este objetoel
resultado esperado, sino el valor s+1+2+...+n
Formalizacin Objetos en un entorno
Algoritmo
--------------------------
--------------------------
--------------------------
--------------------------
Acciones y algoritmos
x P, un
o
Dado un problema y un procesador
itm
x realizable con P.
lg
una solucin de
A
Importante:
ParaSi
ambos
se ejecuta
algoritmos,
el algoritmo
si a, b,A,c las
y d acciones
son acciones
primitivas,ejecutadas
la accin estarn
B dentroendel el algoritmo
orden A se
denominaa, una
b, c,
llamada
a, b, b,ala,algoritmo
d B.
Algoritmo
Objetos y acciones elementales:
Formalizacin
Objetos en un entorno
Utilizacin de objetos
Acciones y algoritmos
Constantes y variables
Tipos de objetos
Contexto y herramientas
Accin leer, accin escribir, accin de
asignacin, expresiones aritmticas
Constantes y variables
La accin:
3b: sumar 1 al valor de ENTERO
y asignar el resultado como nuevo valor de ENTERO
e
bl
(no es invariable)
Adems del valor, toda variable posee otros dos atributos:
El propio
objeto 1
valor
es un
esobjeto
utilizado
particular:
para designar
su valor
al
El objeto es 1 invariable
es una constante
objeto
Constantes y variables
te
Es un objeto de valor invariable.
an
st
particular.
. Tipo numrico
. Tipo carcter
. Tipo cadena
. Tipo lgico
. Tipo compuesto
Tipo numrico
Ejemplo: 12
10.5
+32
-141.67
Tipo carcter
Ejemplo:
E es un valor de un carcter que representa la letra E.
e es un valor de un carcter que representa la letra e.
E es el nombre de una variable.
Tipo cadena
elementales
Tipo compuesto
Ejemplo:
RESULTADO
APELLIDO ASIGNATURA
RESULTADO NOTA
Moro
APELLIDO ASIGNATURA NOTA 9
Informtica
LETRAS NMEROS
Las variables APELLIDO, ASIGNATURA y
Moro Informtica
NOTA, Nuevede la variable
son subdivisiones 9
compuesta RESULTADO.
o
iv
y el procesador estn alternativamente en
ct
ra
actividad se denomina...
te
In
Contexto y herramientas
Durante la ejecucin de un programa puede
requerirse o no la participacin del usuario
ch
at
tiempo, aparece la salida se denomina...
B
Contexto y herramientas
El usuario requiere de una estacin de trabajo
que le permita comunicarse con el procesador.
Pantalla
Escribi
r
ENTORNO
PROCESADOR
Leer
Teclado
Contexto y herramientas - Lectura
En entorno interactivo:
er n
le i
Notacin: Leer ( N )
Siendo N la variable considerada.
Contexto y herramientas - Lectura
Para ejecutar la accin leer el procesador se
pone a la espera y observa el teclado.
Cada tecla que pulsa el usuario, comunica al
procesador una parte de la informacin
esperada.
El usuario indica que la entrada de informacin
ha terminado, pulsando una tecla:
pantalla.
A
Notacin: Escribir ( i )
Donde i puede ser una constante, el valor de una variable, o una
serie de valores.
Contexto y herramientas - Escritura
Tambin se utiliza la accin escribir para
indicar al usuario lo que se espera de l.
Ejemplo:
algoritmo
algoritmo suma_de_enteros
suma_de_enteros
InicioInicio
escribir (Clculo de la suma de los N primeros enteros)
leer (NUM)
escribir(Ingrese
... un valor entero)
leer (NUM)
...
pero no da ninguna
La ejecucin indicacin
del algoritmo abrealelusuario,
tecladoquien
de la
tendra que
estacin saber
para por el
esperar s ingreso
mismo lo que
del ha de NUM...
valor hacer.
Contexto y herramientas - Escritura
La accin escribir tambin se utiliza para
comunicar resultados al usuario.
Ejemplo:
algoritmo suma_de_enteros
Inicio
...
...
escribir(La suma de los , NUM, primeros enteros es, S)
Fin
Notacin: m e
Donde
m es el nombre de la variable a la que el procesador ha de
atribuir el valor.
caracteriza la accin de asignacin.
e representa el valor a asignar
Ejemplo:
a. ENTERO 1
b. APELLIDO MORO
c. TOTAL SUMA
d. NUM A + B
Contexto y herramientas - Asignacin
Ejemplo:
a. ENTERO 1
b. APELLIDO MORO
c. TOTAL SUMA
d. NUM A + B
Si antes
despus de de la ejecucin
la ejecucin de de c, TOTAL
c, TOTAL y SUMA
habr tomado
tienenslos
el valor valores
y SUMA t y conservado
habr s, respectivamente.
su valor.. .
+ suma
- resta
*/ multiplicacin
divisin corriente
div divisin euclidiana
Algoritmo
Fin de la presentacin