Beruflich Dokumente
Kultur Dokumente
Clase Anterior
Mdulos en C: Declaracin.
Nombre, Tipos: parmetros y retorno.
Definicin.
Puede declarar sus propias variables y realizar llamadas a otros mdulos. Variable de retorno.
Llamada
Subrutinas: Sentencia de llamada. Funciones: Asignacin, Expresiones y Argumento.
Funciones Matemticas en C.
Programacin Prof. Gonzalo Mller Clase 16 GM - 2
Datos Agrupados
Que sucede si se necesita trabajar con un conjunto de datos utilizando slo 1 variable.
Estudiante
Datos Agrupados
Que sucede si se necesita trabajar con un conjunto de datos utilizando slo 1 variable.
Nombre Gnero Edad
Estudiante
Datos Agrupados
Que sucede si se necesita trabajar con un conjunto de datos utilizando slo 1 variable.
Nombre Gnero Edad
Estudiante
6 Variables!
Datos Agrupados
Que sucede si se necesita trabajar con un conjunto de datos utilizando slo 1 variable.
Nombre Gnero Edad
Estudiante
Datos Agrupados
Que sucede si se necesita trabajar con un conjunto de datos utilizando slo 1 variable.
Nombre Gnero Edad
Estudiante
Slo 1 Variable
Datos Agrupados
Que sucede si se necesita trabajar con un conjunto de datos utilizando slo 1 variable.
Nombre Gnero Edad
Estudiante
Slo 1 Variable
tipo estudiante
Estructura
Conjunto de datos manipulados a travs de slo 1 variable.
Promedio Nombre U. Crditos Genero Eficiencia Variable Edad
Estructura
Conjunto de datos de tipos diferentes manipulados a travs de slo 1 variable.
Entero sin signo 1B Real 4B Texto Entero sin signo 1B Carcter Real 4B
Variable
Estructura
Una estructura esta definida: Nombre de la estructura. Nombres de los datos. Tipos de los diferentes datos.
Estructura
Una estructura esta definida: Nombre de la estructura. Nombres de los datos. Tipos de los diferentes datos. Ejemplo: Para una encuesta annima a los estudiantes, se requiere almacenar los datos del estudiante.
Estructura
Una estructura esta definida: Nombre de la estructura. Nombres de los datos. Tipos de los diferentes datos. Ejemplo: Para una encuesta annima a los estudiantes, se requiere almacenar los datos del estudiante. El conjunto de datos ser:
Estructura Estudiante genero, edad, promedio, creditos, eficiencia
Estructura
Una estructura esta definida: Nombre de la estructura. Nombres de los datos. Tipos de los diferentes datos. Ejemplo: Para una encuesta annima a los estudiantes, se requiere almacenar los datos del estudiante. El conjunto de datos ser:
Estructura Estudiante genero, edad, promedio, creditos, eficiencia
Estructura
Una estructura esta definida: Nombre de la estructura. Nombres de los datos. Tipos de los diferentes datos. Ejemplo: Para una encuesta annima a los estudiantes, se requiere almacenar los datos del estudiante. El conjunto de datos ser:
Estructura Estudiante genero, edad, promedio, creditos, eficiencia
Estructura
Una estructura esta definida: Nombre de la estructura. Nombres de los datos. Tipos de los diferentes datos. Ejemplo: Para una encuesta annima a los estudiantes, se requiere almacenar los datos del estudiante. El conjunto de datos ser:
Estructura Estudiante genero, edad, promedio, creditos, eficiencia
Estructura
Una estructura pueden ser representada grficamente utilizando UML (Unified Modeling Language):
NOMBRE
dato1: tipo dato2: tipo dato3: tipo datoN: tipo
Estructura
Ejemplo: Definir la estructura para el estudiante de una encuesta annima: El conjunto de datos ser:
Estructura Estudiante genero, edad, promedio, creditos, eficiencia
ESTUDIANTE genero: carcter edad: entero sin signo 1 byte promedio: real 4 bytes creditos: entero sin signo 1 byte eficiencia: real 4 bytes
Programacin Prof. Gonzalo Mller Clase 16 GM - 18
Estructura
NOMBRE
dato1: tipo dato2: tipo dato3: tipo datoN: tipo
Estructura
Si hablamos de una estructura TABLA que se imaginan que almacena?
TABLA
dato1: tipo dato2: tipo dato3: tipo datoN: tipo
Estructura
Si hablamos de una estructura TABLA que se imaginan que almacena?
TABLA
dato1: tipo dato2: tipo dato3: tipo datoN: tipo
Estructura
Si hablamos de una estructura TABLA que se imaginan que almacena?
TABLA
dato1: tipo dato2: tipo dato3: tipo datoN: tipo
Estructura
Si hablamos de una estructura TABLA que se imaginan que almacena?
TABLA
dato1: tipo dato2: tipo dato3: tipo datoN: tipo
Estructura
Si hablamos de una estructura TABLA que se imaginan que almacena?
TABLA
dato1: tipo dato2: tipo dato3: tipo datoN: tipo
Estructura
Si hablamos de una estructura TABLA que se imaginan que almacena?
TABLA
dato1: tipo dato2: tipo dato3: tipo datoN: tipo
?
Programacin Prof. Gonzalo Mller Clase 16 GM - 25
Estructura
Al definir una estructura esta debe agrupar datos que tengan un significado, debe existir Coherencia. Si hablamos de una estructura TABLA que se imaginan que almacena?
TABLA
dato1: tipo dato2: tipo dato3: tipo datoN: tipo Coherencia: Relacin lgica y adecuada de las partes que forman un todo
Programacin Prof. Gonzalo Mller Clase 16 GM - 26
Cohesin lgica: Los datos que conforman a la estructura se interrelacionan para forma un todo definido. Cohesin en datos: Los datos agrupados son utilizados en varias tareas comunes. Cohesin coincidental: Se agruparon varios datos sin relacin alguna.
Siempre tratar de utilizar coherencia de alto nivel
Programacin Prof. Gonzalo Mller Clase 16 GM - 27
Estructura en C++
La estructura constituye un tipo de dato definido por el programador, por lo tanto, el proceso para utilizar las estructuras es el siguiente:
Estructura en C++
Estructura en C++
struct NOMBRE {
tipo identificador1; tipo identificador2;
Nombre de la estructura
Conjunto de datos
tipo identificadorN;
};
Nombre de la estructura
Estructura en C++
En memoria:
unsigned char unsigned short float char float
Variable estudiante1
genero edad
promedio
creditos
eficiencia
Campo eficiencia
Ejemplo:
// Asigna edad a estudiante estudiante1.edad = 18; // Escribe en pantalla promedio de estudiante printf("%f", estudiante1.promedio);
Programacin Prof. Gonzalo Mller Clase 16 GM - 41
Fase 1: Diseo y Anlisis: DES y UML DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa estructurado en C++.
Programacin Prof. Gonzalo Mller Clase 16 GM - 42
Ejercicio
Construir un programa estructurado con estructuras en C++ para: a) Leer 1 polgono (N identificador, N de lados, longitud de un lado, apotema) y escribir en la salida toda su informacin. Fase 1: Diseo y Anlisis: DES y UML DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa estructurado C++.
Evaluacin: Manejo Bsico
Programacin Prof. Gonzalo Mller Clase 16 GM - 43
Llamada:
ESTRUCTURA variable1; mdulo(variable1, )
Como parmetro
Llamada:
ESTRUCTURA variable1; variable1 = funcin()
Como parmetro
// Algoritmo //
Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Programacin Prof. Gonzalo Mller Clase 16 GM - 54
Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Programacin Prof. Gonzalo Mller Clase 16 GM - 55
Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Programacin Prof. Gonzalo Mller Clase 16 GM - 56
Ejercicio
Construir un programa modular con acoplamiento de datos bsico con estructuras en C++ para: a) Leer 1 polgono (N identificador, N de lados, longitud de un lado, apotema) y escribir en la salida toda su informacin. Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Evaluacin: Manejo Modular
Programacin Prof. Gonzalo Mller Clase 16 GM - 57
Ejercicio
Construir un programa modular con acoplamiento de datos bsico con estructuras en C++ para: b) Leer 1 polgono (N identificador, N de lados, longitud de un lado, apotema, rea) y escribir en la salida toda su informacin. Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Evaluacin: Manejo Modular
Programacin Prof. Gonzalo Mller Clase 16 GM - 58
Ejercicio
Construir un programa modular con acoplamiento de datos bsico con estructuras en C++ para: b) Leer 1 polgono (N identificador, N de lados, longitud de un lado, apotema, rea) y escribir en la salida toda su informacin. A=n*l*a/2 Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Evaluacin: Manejo Modular
Programacin Prof. Gonzalo Mller Clase 16 GM - 59
Ejercicio
Construir un programa modular con acoplamiento de datos bsico con estructuras en C++ para: c) Leer N polgonos (N identificador, N de lados, longitud de un lado, apotema, rea) y escribir en la salida cada uno con toda su informacin. Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Evaluacin: Manejo Modular
Programacin Prof. Gonzalo Mller Clase 16 GM - 65
Ejercicio
Construir un programa modular con acoplamiento de datos bsico con estructuras en C++ para: d) Leer N polgonos (N identificador, N de lados, longitud de un lado, apotema, rea) y escribir en la salida el polgono de ms lados y el de mayor rea. Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Evaluacin: Asignacin
Programacin Prof. Gonzalo Mller Clase 16 GM - 66
Ejercicio
Construir un programa modular con acoplamiento de datos bsico con estructuras en C++ para: e) Leer N polgonos (N identificador, N de lados, longitud de un lado, apotema) y escribir en la salida el polgono de ms lados, el de mayor apotema y de mayor rea. (3 mdulos de comparacin) Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Programacin Prof. Gonzalo Mller Clase 16 GM - 67
Evaluacin: Modificacin
Formas en que podemos utilizar los mdulos: # Retornos 0 1 Usar Subrutina Funcin
Mdulos
DES
Salidas
Entradas
DES
Salidas
DTD
Entradas
DES
Salidas
DTD
Entradas 3
UML
ESTRUCTURA
dato1: tipo dato2: tipo
DES
Salidas
DTD
Entradas 3
UML
4
ESTRUCTURA
dato1: tipo dato2: tipo
DREs
Nombre
FIN
DES
Salidas
DTD
Entradas 3
UML
4
ESTRUCTURA
dato1: tipo dato2: tipo 5
DREs
Nombre
FIN
Lista de Variables
Variables variable : tipo
DES
Salidas
DTD
Entradas 3
UML
4
ESTRUCTURA
dato1: tipo dato2: tipo 5
DREs
Nombre
FIN
Lista de Variables
Variables variable : tipo Modulo nombre Parmetros parametro1:tipo1, 6
Tabla de Mdulos
Retorno retorno:tipo Tipo subrutina o funcin
DES
Salidas
DTD
Entradas 3
UML
4
ESTRUCTURA
dato1: tipo dato2: tipo 5
DREs
Nombre
FIN Mdulos main() { }
C++
Definicin de Estructuras
Lista de Variables
Variables variable : tipo Modulo nombre Parmetros parametro1:tipo1, 6
Tabla de Mdulos
Retorno retorno:tipo Tipo
*.cpp
subrutina o funcin
DES
Salidas
DTD
Entradas 3
UML
4
ESTRUCTURA
dato1: tipo dato2: tipo 5
DREs
Nombre
FIN Mdulos main() { }
C++
Definicin de Estructuras
Lista de Variables
Variables variable : tipo Modulo nombre Parmetros parametro1:tipo1, 6
Tabla de Mdulos
Retorno retorno:tipo Tipo
*.cpp
subrutina o funcin
DES
Salidas
DTD
Entradas 3
UML
4
ESTRUCTURA
dato1: tipo dato2: tipo 5
DREs
Nombre
FIN Mdulos main() { }
C++
Definicin de Estructuras
Lista de Variables
Variables variable : tipo Modulo nombre Parmetros parametro1:tipo1, 6
Tabla de Mdulos
Retorno retorno:tipo Tipo
*.cpp
subrutina o funcin
DES
Salidas
DTD
Entradas 3
UML
4
ESTRUCTURA
dato1: tipo dato2: tipo 5
DREs
Nombre
FIN Mdulos main() { }
C++
Definicin de Estructuras
Lista de Variables
Variables variable : tipo Modulo nombre Parmetros parametro1:tipo1, 6
Tabla de Mdulos
Retorno retorno:tipo Tipo
*.cpp
subrutina o funcin
DES
Salidas
DTD
Entradas 3
UML
4
ESTRUCTURA
dato1: tipo dato2: tipo 5
DREs
Nombre
FIN Mdulos main() { }
C++
Definicin de Estructuras
Lista de Variables
Variables variable : tipo Modulo nombre Parmetros parametro1:tipo1, 6
Tabla de Mdulos
Retorno retorno:tipo Tipo
*.cpp
subrutina o funcin
Ejemplo: Disear y construir un programa modular con acoplamiento de datos bsico con estructuras en C++ que lea ecuaciones cuadrticas y escriba en salida las ecuaciones y sus soluciones.
Estructura
Es un artefacto Muy Poderoso
ya que permiten manejar gran cantidad de datos a travs de una sola variable
char genero unsigned char edad float promedio unsigned short creditos float eficiencia ESTUDIANTE alumno
Estructura
Es un artefacto Muy Poderoso
ya que permiten manejar gran cantidad de datos a travs de una sola variable
escribeAlumno(genero, edad,promedio,credito s,eficiencia) escribeAlumno(alumno)
Ejercicio
Construir un programa modular con acoplamiento de datos bsico con estructuras en C++ para: f) Leer la posicin (x, y), el peso y N identificador para 1 maquina y presentar en la salida toda la informacin. Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Programacin Prof. Gonzalo Mller Clase 16 GM - 84
Ejercicio
Construir un programa modular con acoplamiento de datos bsico con estructuras en C++ para: g) Leer la posicin (x, y), el peso y N identificador para N maquinas y presentar en la salida la informacin de cada una. Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Programacin Prof. Gonzalo Mller Clase 16 GM - 85
Ejercicio
Construir un programa modular con acoplamiento de datos bsico con estructuras en C++ para: h) Leer la posicin (x, y), el peso y N identificador para N maquinas y presentar en la salida toda la informacin de la menos pesada. Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Programacin Prof. Gonzalo Mller Clase 16 GM - 86
Ejercicio
Construir un programa modular con acoplamiento de datos bsico con estructuras en C++ para: i) Leer la posicin (x, y), el peso y N identificador para N maquinas y presentar en la salida toda la informacin de la menos pesada y la ms cercana al origen. Fase 1: Diseo y Anlisis: DES, DTD y UML DES, DRE DF y LV de Mdulos y TM. DRE DF, LV y CF de Bloque Principal. Fase 2: Codificacin: programa modular en C++.
Programacin Prof. Gonzalo Mller Clase 16 GM - 87
Resumen
Datos Agrupados de Diferentes Tipos Estructura UML Estructura en C++: 1 Se debe definir la estructura: struct
Nombre de la estructura. Tipos de variables contenidas. Nombres de las variables contenidas. Antes de las declaraciones de mdulos y de variables
Resumen
Manejo de una variable estructura: Campos de una estructura. Operador miembro . . Asignacin de una variable estructura. Mdulos con estructuras: Estructura como parmetro. Estructura como retorno.
2 ms retornos