Actualizado el 30 de Junio del 2018 (Publicado el 23 de Mayo del 2018)
758 visualizaciones desde el 23 de Mayo del 2018
545,5 KB
26 paginas
Creado hace 8a (01/05/2016)
Teoría Nº 5
ü Datos
Segundo Cuatrimestre 2016
Fund. de la Informática -Int. a la Computación - Int.a la Programación – Res. De Problemas y Algoritmos
1
Algoritmos Computacionales
Objetos capaces de almacenar datos propios de la computadora
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
2
Definiciones asociadas:
Enunciado: descripción del trabajo a realizar.
Procesador: Computadora
Ambiente: los objetos del universo del problema.
los objetos
Cómo son esos objetos?
Cuáles son esos objetos?
Suponemos que los objetos son contenedores de datos, por ejemplo CAJAS
Como puedo pretender trabajar con varios de estos objetos (cajas)
Datos
Es necesario, distinguirlos unos de otros, identificarlos unívocamente, o lo
que es lo mismo asignarles un Nombre o Identificador.
pepe
juan
estrella
casa
Todos ellos van a contener datos propios de una computadora, en principio
números o letras.
123
estrella
oso
estrella
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
3
Restricción: Solamente podrán contener información de un solo tipo.
Datos
123
estrella
123
estrella
oso
estrella
oso
estrella
CATEGORIZAR LOS OBJETOS
pepe
juan
Objetos que almacenan números
casa
estrella
Objetos que almacenan letras o
caracteres
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
4
Datos
Datos
enteros
reales
numérica
caracteres
lógica
pepe
Objetos que almacenan enteros
juan
estrella
Objetos que almacenan letras o caracteres
casa
luis
jose
Objetos que almacenan reales
lucas
tomas
Objetos que almacenan valores lógicos
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
5
Datos
Debido a que una computadora procesa datos, (datos categorizados en
entera, real, carácter o lógica) es altamente probable
que ese
procesamiento implica que los datos, que se le entregue a la entrada,
deban ser modificados para poder entregar un resultado.
La datos almacenados en los objetos (contenedores) puede variar, es
decir los objetos van a variar su contenido durante el proceso de
resolución de un problema.
A los objetos se los denomina:
VARIABLES DE INFORMACIÓN
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
6
En
síntesis
Variables
Atributos
Nombre
Tipo de Datos
Variable
Almacena un dato temporalmente
Funcionalidad
Es posible cambiar su contenido
durante el ciclo de vida de un
proceso
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
7
Variables
Ejemplo Nº 1:
Enunciado: dados dos números enteros positivos, digamos m y n, encontrar el
algoritmo que determine la potencia n-ésima de m. Con n > 1.
Procesador: computadora.
Acciones primitivas:
Ambiente: ¿Variables?
4 Dar un valor a un objeto.
4 Calcular la suma de dos números.
4 Calcular el producto de dos números.
4 conjunto repetitivo de acciones expresado:
Mientras <condición> Hacer
<acciones-primitivas> Repetir.
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
8
Variables
Análisis del problema:
• Si se tiene que m representa el valor 4 y n representa el
valor 3, entonces se calcula: 43 = 4 x 4 x 4 = 64.
• Si se tiene que m representa el valor 2 y n representa el
valor 6, entonces se calcula:
26 = 2 x 2 x 2 x 2 x 2 x 2 = 64.
Generalizando
mn = m x m x … x m
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
9
Variables
n veces se repite m
Si mn = m x m x … x m
mn =
(mn-1 x m)
(mn-2 x m)
(mn-3 x m)
(m2 x m)
(m x m)
• Cuantas veces se realizó la operación?
• Cada operación es igual a la anterior?
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
10
Variables
8
8 x 81
8 x 82
83
Número a multiplicar
(base de la potencia)
Cálculo previo a ser
reutilizado
Realizar: 83
83 = 8 x 8 x 8
3
índice de la potencia
2
Número de veces
que se realizó la
multiplicación
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
11
Variables
Determinación de las variables que contienen información necesaria:
1- objeto conteniendo el entero positivo al cual se le
calcula la potencia (base de la potencia).
2- objeto conteniendo el entero positivo que indica la
potencia (exponente de la potencia).
3- objeto que determine cuantas multiplicaciones se deben
realizar.
4- objeto que mantenga los cálculos previos para poder
realizar los nuevos cálculos.
Ambiente: 4 variables
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
12
Algoritmo: (Solución en Lenguaje de Problemas)
Versión 1:
t1 - Determinar nombres y tipos de las variables.
t2 - Dar valores iniciales a las variables.
t3 - Contando desde 1, multiplico el entero
por la potencia anterior, tantas veces
como lo indica el índice de
la potencia.
Variables
Versión 2:
t1 - Determinar nombres y tipos de las variables.
t2 - Dar valores iniciales a las variables.
t31 - Comenzar con el entero 1.
t32 - Para todo entero positivo menor que el
valor indicado como índice, multiplicar
el número dado por el resultado anterior.
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
13
Diagrama de Flujo
C
Determinar nombres y tipos a las variables.
Dar valores iniciales a las variables.
Comenzar con el entero 1.
entero < índice pot.
F
V
tomar el número y multiplicarlo
por el resultado anterior.
.
Tomar un nuevo entero.
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
F
14
Variables
1 - Variable con el valor de la base (NUMERO)
2 - Variable con el valor del índice (POTENCIA)
3 - Variable conteniendo el entero que indica las veces que
se debe multiplicar (VECES).
4- Variable que que guarda cálculos previos (PREVIO)
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
15
Variables
Bosquejo del algoritmo:
t1 - NUMERO, POTENCIA, PREVIO, VECES del tipo entero
t21 - dar a NUMERO el valor m (el que se desee)
t22 - dar a POTENCIA el valor n (mayor que 1)
t23 - dar a PREVIO el valor m
t31 - dar a VECES el valor 1
MIENTRAS el valor de VECES sea menor que el valor de POTENCIA HACER
t321- multiplicar el valor de NUMERO por el valor de PREVIO
t322 -dar este nuevo resultado al objeto PREVIO
t323 -sumar 1 al valor de VECES
t324 -dar este nuevo resultado al objeto VECES
REPETIR
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
16
Ejemplo Nº 2:
Enunciado: dado un número entero positivo, encontrar el algoritmo que
determine el factorial de dicho número.
Procesador: computadora.
Acciones primitivas:
Variables
4 Dar un valor a una variable.
4 Calcular la suma de dos números.
4 Calcular el producto de dos números.
4 conjunto repetitvo de acciones expresado:
Mientras <condición> Hacer <acciones-primitivas> Repetir.
Ambiente: ¿Variables?
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
17
Análisis del problema:
Si se tiene el nro. 4, se calculará: 1x2x3x4 = 24 = 4!
Si se tiene el Nº 5, se calculará: 1x2x3x4x5 =120 = 5!
y así siguiendo.
Variables
1! = 1
2! = 2 x 1 = 2 x 1!
3! = 3 x 2 x 1 = 3 x 2!
.....
n! = n x (n -1) x (n-2) x ... x 1 = n x (n-1)!
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
18
n! = n x (n -1) x (n-2) x ... x 1 = n x (n-1)!
n = 4
Número a calcular el
factorial,
2 x 1!
1
Variables
Número a multiplicar
Veces que debo
multiplicar
3 x 2!
4! = 4 x 3!
Calculo previo a ser
reutilizado
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
19
Variables
Determinación de las variables:
1- variables conteniendo el entero positivo al cual se le calcula el factorial y que
determina las veces que debo multiplicar.
2- variables que determine que valores se irán multiplicando.
3- variables que mantenga los cálculos previos para poder realizar los nuevos
cálculos.
Ambiente: 3 variables
UNSL - Fund. de la Informática -Introd.a la Computación -Introd.a la Programación – Res. De Prob. y Algoritmos
20
Ejemplo
Algoritmo:
Solución 1: Versión 1: (nivel 1 de descomposición)
t1 - Asignar nombres y tipos a las variables.
t2 - Dar valores iniciales a las variables.
t3 - Realizar repetidamente el producto de un
numero por el factorial de su anterior.
Versión 2:
t1 - Asignar nombres y tipos a las variables.
t2 - Dar valores iniciales a las variables.
t31 - Comenzar con el entero 1.
t32 - Para todo entero positivo menor o igua
Comentarios de: Teoría 5 - Datos (0)
No hay comentarios