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.

Entradas relacionadas: