Bitácora de la Cátedra Métodos de Programación I
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 8,19 KB
Bitácora
Cátedra: Métodos de Programación I
Miércoles 19 de enero de 2011
Primer día de inicio de clases, con una introducción a los temas que desarrollaremos en dicha materia y la presentación del catedrático Juan Pablo Ortiz Cinco. Se revisó el sistema de calificación y la metodología de estudio, así como las expectativas que se tienen de la clase, además de un breve preámbulo de cómo serán las demás clases.
Viernes 21 de enero de 2011
Introducción a las estructuras de datos.
Dato simple: Un espacio en memoria.
Ejemplo: Venta = [30]
Iden. Componente
Dato estructurado:
- Vectores o arreglos unidimensionales.
- Matriz o arreglos multidimensionales.
Ejemplo: Varios = [60]
Iden Componentes
Características de los arreglos:
Arreglo unidimensional (vector): Es una estructura de datos que se define como una colección finita, homogénea y ordenada de elementos.
Lunes 24 de enero de 2011
Operaciones en arreglos:
Los arreglos son estáticos, ya que no se pueden redefinir.
Operaciones:
- Lectura
- Escritura
- Asignación
- Actualización:
- Eliminación
- Inserción
- Modificación
Lectura: Consiste en asignar un valor a cada una de las componentes.
Escritura:
Actualización:
Miércoles 26 de enero de 2011
Operaciones con arreglos:
insertar_desordenado(V,N,Y)
elimina_desordenado(V,N,X)
modifica_desordenado(V,N,X,Y)
Viernes 28 de enero de 2011
Buscar_secuencial_ordenado(V,N,X,POS)
Elimina_ordenado(V,N,X)
Lunes 31 de enero de 2011
¿Qué es un arreglo bidimensional?
Es un conjunto de datos homogéneo, finito y ordenado donde se hace referencia a cada elemento por medio de 2 índices.
id_arreglo: Arreglo[liminf..limsup, liminf..limsup]
de tipo
Ejemplo:
produccion[1-12,1-3]
NTC = (limsup - liminf + 1) * (limsup - liminf + 1)
produccion = [8,2]
*rfilas
Miércoles 2 de febrero de 2011
MATRIZ[1-10,1-5]
NTC = (10-1+1)*(5-1+1)
NTC = 50
Ejemplo: Arreglo bidimensional
mat[“a”..”2”,-5..5] de caracteres
NTC = (ord(“2”)-ord((a)+1)*(5-(-5)+1)
NTC = (122-97+1)*(11)
NTC = 26*11
NTC = 286
- LECTURA
- ESCRITURA
- ASIGNACIÓN
- ELIMINACIÓN
MATRIZ[1-10,1-5] DE REALES
REPETIR DESDE I=1 HASTA 10
REPETIR DESDE I=1 HASTA 5
ESCRIBIR MATRIZ [I,J] (EN NUMERO [9,3])
(LEER MATRIZ [I,J] (EN NUMERO [9,3]) PARA LEER
FIN REPETIR
FIN REPETIR
Arreglo de 2 o más dimensiones
NTC = (LS1-LI1+1)*(LSN-LIN+1)
REGISTROS (ESTRUCTURA DE DATOS)
Ejemplo:
nombre = cadena
dirección = cadena
edad = entero
sexo = caracter
antigüedad = real
REGISTRO: Es un dato estructurado donde cada uno de los componentes se denomina campo.
- Campos de varios tipos.
- Cada campo tiene un nombre único.
Ejemplo:
fecha: registro
dia: 1...31
mes: 1...12
año: 0...2000
fin de definición de registro
Diferencias con los arreglos:
- Los arreglos son homogéneos y los registros no.
- Un arreglo puede almacenar N elementos del mismo tipo.
- Un registro puede almacenar N elementos de diferentes tipos.
- Los componentes de un arreglo se acceden por medio de índices.
- Los componentes de un registro se acceden por medio de un nombre, el cual es único (campo).
Viernes 4 de febrero de 2011
Diferencias con los arreglos:
- Los arreglos son homogéneos y los registros no.
- Un arreglo puede almacenar N elementos del mismo tipo.
- Un registro puede almacenar N elementos de diferentes tipos.
- Los componentes de un arreglo se acceden por medio de índices.
- Los componentes de un registro se acceden por medio de un nombre, el cual es único (campo).
Referencia a registros:
Ejemplo:
Auto.marca
Leer un registro:
Leer (auto.codigo, auto.marca, auto.precio)
Asignar una instrucción:
auto.codigo = auto.codigo + 10
auto.marca = "auto.marca"
auto.precio = auto.precio + 15000
Diferencias con los arreglos:
- Los arreglos son homogéneos y los registros no.
- Un arreglo puede almacenar N elementos del mismo tipo.
- Un registro puede almacenar N elementos de diferentes tipos.
- Los componentes de un arreglo se acceden por medio de índices.
- Los componentes de un registro se acceden por medio de un nombre, el cual es único (campo).
Algoritmo que intercambie filas de una matriz 4x4:
Hacer desde f=4 hasta 1, -1
A = a + 1
Hacer desde c=1 hasta 4, 1
Mat2 [a,c] = mat1[f,c]
Fin desde
Fin desde
Lunes 7 de febrero de 2011
Ejemplo:
Cliente: Registro
Nombre: cadena
Telefono: cadena
Saldo: real
Moroso: booleano
Fin registro
Acceder a datos de registro:
Leer Aestudiantes[10]
Leer Aestudiantes.nombre[10]
Leer Aestudiantes.apellido[10] etc
Repetir desde I=1 hasta N
Leer Aestudiantes[I].nombre
Leer Aestudiantes[I].apellido
Miércoles 9 de febrero de 2011
Registros anidados:
Es un registro en el cual 1 o varios de sus campos son del tipo registro.
Ejemplo:
Domicilio = Registro
Calle (cadena)
Numero (entero)
Ciudad (cadena)
Pais (cadena)
Fin registro
Registro anidados
Acreedor = Registro
Nombre (cadena)
Direccion (cadena)
Saldo (real)
Fin registro
Ejercicio:
Al momento de su ingreso a un hospital, a un paciente le solicitan los siguientes datos:
Nombre, edad, sexo
Viernes 11 de febrero de 2011
Registro con arreglos:
Clientes: registros
Nombre (cadena)
Telefono (cadena)
Saldos (arreglo[1-12] reales)
Moroso (booleano)
Fin registro
Clientes.nombre
Clientes.telefono
Clientes.moroso
Repetir desde I=1 hasta 12
Clientes.saldos[I]
Fin repetir
Arreglos paralelos
Nombre[1-12] de tipo cadena
Notas[1-12] de tipo real
Acceso a datos así:
Repetir desde I=1 hasta 52, 1
Alumnos[I].nombre
Alumnos[I].nota
Fin repetir
Lunes 14 de febrero de 2011
Conjuntos: Es un tipo de datos estructurado que se puede definir como una colección de objetos del mismo tipo base.
Ident = conjunto de tipo
Por comprensión: numeros = naturales
Por extensión: = [0,1..9]
Miércoles 16 de febrero de 2011
Por comprensión:
U = Las letras del alfabeto
A = Las primeras 15 letras del alfabeto
B = Las primeras 20 letras del alfabeto
C = Las últimas 10 letras del alfabeto
D = Las últimas 5 letras del alfabeto
E’
E = A + B
E = B + D
E = A * D
E = C * D
E = AEU
E = C’
E = A >= B
E = C - D
Por extensión:
U = [A,B,C...Z]
A = [A,B,C...N]
B = [A,B,C...S]
C = [Q,R...Z]
D = [V,W,X,Y,Z]
A’ = [P,Q,R...Z]
E = A + B = [A,B,C...S]
E = B + D = [A,B,C...S,V,W,X,Y,Z]
E = A * D = 0
E = C * D = [V,W,X,Y,Z]
E = AEU = [V]
E = C’ = [A,B,C...P]
E = C >= B = [F]
E = C - D = [Q,R,S,T,U]
D’ = [A,B,C...U]
E = U * 0 = 0
Viernes 18 de febrero de 2011
Un repaso de Conjuntos.