Programación 1 Tema 11. Estructuración agregada de datos
|
|
- María Nieves Morales Carmona
- hace 7 años
- Vistas:
Transcripción
1 Programación 1 Tema 11 Estructuración agregada de datos
2 Índice Registros y campos Dominio de valores Representación externa Operaciones Problemas y ejemplos
3 Problema Gestionar información relativa a ciudadanos de un determinado lugar: Nombre Apellidos NIF Fecha de nacimiento Estado civil (casado, no casado) Sexo
4 Registro Registro o tupla Agrupan datos de igual o diferente naturaleza relacionados entre sí Para utilizarlos, hay que definir antes un tipo registro
5 Sintaxis * Definición de un nuevo tipo de dato con estructura de registro struct NombreTipo { tipo_campo_1 nombre_campo_1; tipo_campo_2 nombre_campo_2;... tipo_campo_n nombre_campo_n; ; * Definición de datos, simples o estructurados, del tipo definido * anteriormente NombreTipo reg1, reg2; NombreTipo reg3; NombreTipo tabla[100];
6 Sintaxis <definicióntiporegistro> ::= struct <identificador> { { <definicióncampo> ; <definicióncampo> ::= <tipo> <declaraciónsimple> {, <declaraciónsimple> ; <declaraciónsimple> ::= <nombrecampo>[ = <expresión>]
7 Ejemplos struct Fecha { int dia, mes, anyo; ; Fecha hoy; Fecha cumplesclase[50];
8 Ejemplos struct Nif { int dni; // número del DNI del ciudadano char letra; // letra asociada al DNI ;
9 Registros Dominio de valores Producto cartesiano de los dominios de valores de los campos Representación externa Listas (en según que contextos) Fecha hoy = {8, 11, 2016; Nif rey = {15, 'S';
10 Registros Operadores:. : operador de selección de campo hoy.dia = 27; hoy.dia++; cout << rey.dni << "-" << rey.letra; cumplesclase[0].mes = 8;
11 Metodología de trabajo con registros en módulos Fichero de interfaz del módulo Definición del tipo registro Declaraciones de funciones para trabajar con el tipo Deberían ser suficientes para poder utilizar el registro sin utilizar directamente sus campos Fichero de implementación del módulo Definiciones de las funciones declaradas en el fichero de interfaz Definiciones de otras funciones auxiliares
12 Número de identificación fiscal. Interfaz (Sin comentarios) struct Nif { int dni; char letra; ; Nif crearnif(int dni, char letra); Nif crearnif(int dni); int dni(nif nif); char letra (Nif nif); bool esvalido(nif nif);
13 Número de identificación fiscal. Interfaz (Completo) * Representa la información del NIF (Número de Identificación Fiscal) de un * ciudadano. struct Nif { int dni; número del DNI del ciudadano char letra; letra asociada al número de DNI anterior ; * Pre: dni > 0 y letra ha de ser una letra mayúscula. * Post: Devuelve un dato que representa un NIF con número igual a «dni» y * letra igual a «letra». Nif crearnif(int dni, char letra); * Pre: dni > 0 y letra ha de ser una letra mayúscula. * Post: Devuelve un dato que representa un NIF con número igual a «dni» y la * letra que le corresponde a dicho número. Nif crearnif(int dni);
14 Número de identificación fiscal. Interfaz (Completo) * Pre: --- * Post: Devuelve el número del DNI del NIF nif. int dni(nif nif); * Pre: --- * Post: Devuelve la letra del NIF nif. char letra (Nif nif); * Pre: --- * Post: Devuelve «true» si y solo si «nif» define un NIF válido, es decir, su * letra es la que le corresponde a su DNI bool esvalido(nif nif);
15 Número de identificación fiscal. Implementación Fichero de implementación nif.cc #include "nif.h" const int NUM_LETRAS = 23; const char TABLA_NIF[NUM_LETRAS] = { 'T', 'R', 'W', 'A', 'G', 'M', 'Y', 'F', 'P', 'D', 'X', 'B', 'N', 'J', 'Z', 'S', 'Q', 'V', 'H', 'L', 'C', 'K', 'E' ; * Pre: --- * Post: Devuelve la letra del número de identificación fiscal que corresponde a * un número de documento nacional de identidad igual a «dni» char calcularletra(int dni) { return TABLA_NIF[dni % NUM_LETRAS];
16 Número de identificación fiscal. Implementación * Pre: dni > 0 y letra ha de ser una letra * mayúscula. * Post: Devuelve un dato que representa un * NIF con número igual a «dni» y letra * igual a «letra». Nif crearnif(int dni, char letra) { Nif nuevo; nuevo.dni = dni; nuevo.letra = letra; return nuevo;
17 Número de identificación fiscal. Implementación * Pre: dni > 0 y letra ha de ser una * letra mayúscula. * Post: Devuelve un dato que representa * un NIF con número igual a «dni» y * la letra que le corresponde a * dicho número. Nif crearnif(int dni) { Nif nuevo = {dni, calcularletra(dni); return nuevo;
18 Número de identificación fiscal. Implementación * Pre: --- * Post: Devuelve el número del DNI del NIF nif. int dni(nif nif) { return nif.dni; * Pre: --- * Post: Devuelve la letra del NIF nif. char letra(nif nif) { return nif.letra;
19 Número de identificación fiscal. Implementación * Pre: --- * Post: Devuelve «true» si y solo si «nif» * define un NIF válido, es decir, su * letra es la que le corresponde a su * DNI. bool esvalido(nif nif) { return nif.letra == calcularletra(nif.dni);
20 Fechas. Interfaz (Sin comentarios) struct Fecha { int dia, mes, anyo; ; Fecha definirfecha(int d, int m, int a); Fecha definirfecha(int fecha); int dia(fecha f); int mes(fecha f); int anyo(fecha f); int fechacompacta (Fecha f);
21 Fechas. Interfaz (Completa) Fichero de interfaz fecha.h struct Fecha { int dia, mes, anyo; ; Pre: 1 <= d <=31, 1 <= m <= 12, a > 0 * Post: Ha devuelto la fecha definida por d/m/a Fecha definirfecha(int d, int m, int a); Pre: El valor de «fecha» tiene ocho cifras cuando se * escribe en base 10: «aaaammdd». * Post: Ha devuelto la fecha definida por dd/mm/aaaa Fecha definirfecha(int fecha);
22 Fechas. Interfaz * Pre: «f» es una fecha válida del * calendario. * Post: Ha devuelto el número correspondiente al * día del mes de la fecha «f». int dia(fecha f); * Pre: «f» es una fecha válida del calendario. * Post: Ha devuelto el número correspondiente al * mes de la fecha «f» int mes(fecha f);
23 Fechas. Interfaz * Pre: «f» es una fecha válida del calendario. * Post: Ha devuelto el número correspondiente al * año de la fecha «f». int anyo(fecha f); * Pre: f es una fecha válida del calendario. * Post: devuelve un entero que al ser escrito en * base 10 representa la fecha «f» de la forma * «aaammdd». int fechacompacta (Fecha f);
24 Fechas. Implementación Fichero de implementación fecha.cpp #include "fecha.h" * Pre: 1 <= d <=31, 1 <= m <= 12, a > 0 * Post: Ha devuelto la fecha definida por d/m/a Fecha definirfecha (int d, int m, int a) { Fecha f = { d, m, a ; return f; * Pre: El valor de «fecha» tiene ocho cifras cuando se escribe en base 10: * «aaaammdd». «aaaa» define el año, «mm» el número del mes y «dd» el día * del mes. * Post: Ha devuelto la fecha definida por dd/mm/aaaa Fecha definirfecha(int fecha) { Fecha f = { fecha % 100, fecha / 100 % 100, fecha / ; return f ;
25 Fechas. Implementación * Pre: «f» es una fecha válida del calendario. * Post: Ha devuelto el número correspondiente al * día del mes de la fecha «f». int dia(fecha f) { return f.dia; * Pre: «f» es una fecha válida del calendario. * Post: Ha devuelto el número correspondiente al * mes de la fecha «f». int mes(fecha f) { return f.mes;
26 Fechas. Implementación * Pre: «f» es una fecha válida del calendario. * Post: Ha devuelto el número correspondiente al * año de la fecha «f». int anyo(fecha f) { return f.anyo; * Pre: «f» es una fecha válida del calendario. * Post: devuelve un entero que al ser escrito en * base 10 representa la fecha * «f» de la forma «aaammdd». int fechacompacta (Fecha f) { return 10000*f.anyo + 100*f.mes + f.dia;
27 Fechas. Otra representación Fichero de interfaz fecha.h struct Fecha { int fecha; ; Pre: 1 <= d <=31, 1 <= m <= 12, a > 0 * Post: Ha devuelto la fecha definida por d/m/a Fecha definirfecha(int d, int m, int a); Pre: El valor de «fecha» «aaaammdd». * Post: Ha devuelto la fecha definida por dd/mm/aaaa Fecha definirfecha(int fecha);...
28 Fecha. Otra implementación Fichero de implementación modificado fecha.cpp #include "fecha.h" * Pre: 1 <= d <=31, 1 <= m <= 12, a > 0 * Post: Ha devuelto la fecha definida por d/m/a Fecha definirfecha(int d, int m, int a) { Fecha f = { d + 100*m *a ; return f; * Pre: El valor de «fecha» tiene ocho cifras cuando se escribe en base 10: * «aaaammdd». * «aaaa» define el año, «mm» el número del mes y «dd» el día del mes. * Post: Ha devuelto la fecha definida por dd/mm/aaaa Fecha definirfecha(int fecha) { Fecha f = { fecha ; return f ;
29 Fecha. Otra implementación * Pre: «f» es una fecha válida del calendario. * Post: Ha devuelto el número correspondiente al * día del mes de la fecha «f». int dia(fecha f) { return f.fecha % 100; * Pre: «f» es una fecha válida del calendario * Post: Ha devuelto el número correspondiente al * mes de la fecha «f» int mes(fecha f) { return f.fecha / 100 % 100;
30 Fecha. Otra implementación * Pre: «f» es una fecha válida del calendario. * Post: Ha devuelto el número correspondiente al * año de la fecha «f». int anyo(fecha f) { return f.fecha / 10000; * Pre: «f» es una fecha válida del calendario. * Post: devuelve un entero que al ser escrito en * base 10 representa la fecha * «f» de la forma «aaammdd». int fechacompacta (Fecha f) { return f.fecha;
31 Ciudadano. Interfaz Fichero de interfaz ciudadano.h Límite de la longitud de un nombre representable. const int MAX_LONG_NOMBRE = 24; Límite de la longitud de los apellidos representables. const int MAX_LONG_APELLIDOS = 24;...
32 Ciudadano. Interfaz... Representa la información relevante de un ciudadano: * nombre y apellidos, número de identificación fiscal, * fecha de nacimiento, estado civil y sexo. struct Ciudadano { char nombre[max_long_nombre]; char apellidos[max_long_apellidos]; Nif nif; Fecha nacimiento; bool casado; bool hombre; ;...
33 Ciudadano. Interfaz * Pre: --- * Post: Ha devuelto un dato que representa a un * ciudadano cuyo nombre es igual a «nombre», su * NIF es igual a «nif», ha nacido en la fecha * «nacimiento», está casado si y solo si «casado» * es «true» y es hombre si y solo si «hombre» es * «true». Ciudadano definirciudadano(const char nombre[], const char apellidos[], Nif nif, Fecha nacimiento, bool casado, bool hombre);
34 Ciudadano. Interfaz * Pre: La dimensión de «nombre» es mayor que la * longitud del nombre del ciudadano «c» * Post: Ha asignado a «nombre» el nombre del * ciudadano «c». void nombre(ciudadano c, char nombre[]); * Pre: La dimensión de «apellidos» es mayor que la * longitud de los apellidos del ciudadano «c». * Post: Ha asignado a «apellidos» los apellidos del * ciudadano «c». void apellidos(ciudadano c, char apellidos []);
35 Ciudadano. Interfaz * Pre: --- * Post: Ha devuelto el NIF del * ciudadano «c». Nif nif(ciudadano c); * Pre: --- * Post: Ha devuelto la fecha de * nacimiento del ciudadano «c». Fecha nacimiento(ciudadano c);
36 Ciudadano. Interfaz * Pre: --- * Post: Ha devuelto «true» si y solo * si el ciudadano «c» está * casado. bool estacasado(ciudadano c); * Pre: --- * Post: Ha devuelto «true» si y solo * si el ciudadano «c» es hombre. bool eshombre (Ciudadano c);
37 Ciudadano. Implementación ***************************************** * Fichero de implementación ciudadano.cc * ***************************************** #include <cstring> // función strcpy #include "nif.h" // NIF de personas #include "fecha.h" // fechas del calendario #include "ciudadano.h" using namespace std;
38 Ciudadano. Implementación * Pre: --- * Post: Ha devuelto un dato que representa a un ciudadano cuyo * nombre es igual a «nombre», su NIF es igual a «nif», ha * nacido en la fecha «nacimiento», está casado si y solo si * «casado» es «true» y es hombre si y solo si «hombre» * es «true». Ciudadano definirciudadano(char nombre[], char apellidos[], Nif nif, Fecha nacimiento, bool casado, bool hombre) { Ciudadano c; strcpy(c.nombre, nombre); strcpy(c.apellidos, apellidos); c.nif = nif; c.nacimiento = nacimiento; c.casado = casado; c.hombre = hombre; return c;
39 Ciudadano. Implementación * Pre: La dimensión de «nombre» es mayor que la * longitud del nombre del ciudadano «c» * Post: Ha asignado a «nombre» el nombre del ciudadano «c». void nombre(ciudadano c, char nombre[]) { strcpy(c.nombre, nombre); * Pre: La dimensión de «apellidos» es mayor que la * longitud de los apellidos del ciudadano «c». * Post: Ha asignado a «apellidos» los apellidos del * ciudadano «c». void apellidos (Ciudadano c, char apellidos[]) { strcpy(c.apellidos, apellidos);
40 Ciudadano. Implementación Pre: --- * Post: Ha devuelto el NIF del ciudadano «c». Nif nif(ciudadano c) { return c.nif ; Pre: --- * Post: Ha devuelto la fecha de nacimiento del ciudadano «c». Fecha nacimiento(ciudadano c) { return c.nacimiento ; Pre: --- * Post: Ha devuelto «true» si y solo si el ciudadano «c» está casado. bool estacasado(ciudadano c) { return c.casado; Pre: --- * Post: Ha devuelto «true» si y solo si el ciudadano «c» es hombre. bool eshombre (Ciudadano c) { return c.hombre;
Programación 1 Tema 3. Información, datos, operaciones y expresiones
Programación 1 Tema 3 Información, datos, operaciones y expresiones Índice Datos y tipos de datos Datos primitivos en C++ Expresiones e instrucción de asignación Datos y tipos de datos Problema información
Más detallesProgramación 1 Desarrollo de proyectos de programación. Desarrollo de un módulo C++ de biblioteca para trabajar con conjuntos de letras
Programación 1 Desarrollo de proyectos de programación Desarrollo de un módulo C++ de biblioteca para trabajar con conjuntos de letras Objetivo del proyecto Desarrollo de un módulo C++ de biblioteca para
Más detallesProgramación 2. Pruebas para la evaluación voluntaria de la asignatura. Grado en Ingeniería Informática. Curso 2014-15
Pruebas para la evaluación voluntaria de la asignatura Programación 2 Grado en Ingeniería Informática Departamento de Informática e Ingeniería de Sistemas Curso 2014-15 PROGRAMACIÓN 2. Curso 2014-15. 1
Más detallesProgramación 1 Tema 3. Información, datos, operaciones y expresiones
Programación 1 Tema 3 Información, datos, operaciones y expresiones Índice Datos y tipos de datos Datos primitivos en C++ Expresiones e instrucción de asignación Datos y tipos de datos Problema información
Más detallesProgramación 1. Tema II. Diseño de programas elementales. Lección 7. Diseño modular y descendente de programas
Programación 1 Tema II. Diseño de programas elementales Lección 7. Diseño modular y descendente de programas 1 Objetivos de la lección : Aprender qué es un diseño modular de un programa Aprender a diseñar
Más detallesProgramación 1 Problemas del Composición condicional
Programación 1 Problemas del 6-10-2016 Composición condicional Un problema Programa que indique si un año es o no bisiesto Escriba un año: 2016 El año 2016 es bisiesto Escriba un año: 2017 El año 2017
Más detallesTipos de datos y operadores en C++
Tipos de datos y operadores en C++ El tipo de dato determina la naturaleza del valor que puede tomar una variable. Un tipo de dato define un dominio de valores y las operaciones que se pueden realizar
Más detallesProgramación 1 Desarrollo de proyectos de programación. Desarrollo de un módulo C++ de biblioteca para trabajar con conjuntos de letras
Programación 1 Desarrollo de proyectos de programación Desarrollo de un módulo C++ de biblioteca para trabajar con conjuntos de letras Objetivo del proyecto Desarrollo de un módulo C++ de biblioteca para
Más detallesProgramación 1. Tema I. Conceptos y elementos básicos de Programación. Lección 2. Lenguaje de programación y ejecución de un programa
Programación 1 Tema I. Conceptos y elementos básicos de Programación Lección 2. Lenguaje de programación y ejecución de un programa 1 Léxico, sintaxis y semántica de un lenguaje #include #include
Más detallesExamen escrito de Programación 1
Examen escrito de Programación 1 Escuela de Ingeniería y Arquitectura Departamento de Informática e Ingeniería de Sistemas 2 de septiembre de 2015 Se debe disponer sobre la mesa en lugar visible un documento
Más detallesProf. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 11 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante Practica Nº11 Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1. Introducción... 1 1.1 Ejercicio 1: Clase
Más detallesExamen escrito de Programación 1. Jueves 5 de febrero de Problema 1 o (3.5 puntos)
Examen escrito de Programación 1. Jueves 5 de febrero de 2015 Se debe disponer de un documento de identificación con fotografía sobre la mesa. Se debe comenzar a resolver cada uno de los dos problemas
Más detallesTipos de Datos Simples Contenido del Tema
T E M A 3 Tipos de Datos Simples Contenido del Tema 3.1. Concepto de Tipo 3.1.1. Elementos básicos: atributos y operaciones 3.1.2. Tipos. Concepto y necesidad 3.1.3. Operadores básicos 3.2. Tipos de Datos
Más detallesFundamentos de la programación
Fundamentos de la programación 2 Grado en Ingeniería Electrónica y Comunicaciones Pilar Sancho Thomas Luis Hernández Yáñez Facultad de Informática Universidad Complutense Fundamentos de la programación:
Más detallesElementos de un programa en C
Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución
Más detallesTIPOS Y ESTRUCTURAS DE DATOS
10 TIPOS Y ESTRUCTURAS DE DATOS 10.1 Programación y Abstracción La abstracción es un mecanismo fundamental para la comprensión de fenómenos o situaciones que implican gran cantidad de detalles. La idea
Más detallesFunciones: Pasos por Referencia Recursividad
Funciones: Pasos por Referencia Recursividad Fundamentos de Programación Fundamentos de Programación I Parámetros por referencia Con la instrucción return sólo se puede devolver un valor calculado. A veces
Más detallesEn el siguiente ejemplo se declara un registro y luego variables de ese tipo de registro:
LABORATORIO #6 (Parte I y II) REGISTROS Y ARCHIVOS Parte I: Registros Un registro es una estructura de datos formado por un conjunto de elementos llamados campos, no necesariamente del mismo tipo y que
Más detallesMacros LENGUAJE DE PROGRAMACIÓN ESTRUCTURADO
Macros LENGUAJE DE PROGRAMACIÓN ESTRUCTURADO Macros tipo objeto #define IDENTIFICADOR VALOR Permiten definir identificadores que son automáticamente reemplazados por un fragmento de código. Son especialmente
Más detallesIntroducción al lenguaje C
Programación 2 Profesorado de Informática CeRP del Suroeste, Uruguay 29 de marzo de 2016 Estructuras de control IV Iteración Sentencia for: for (inicio; condicion; paso) cuerpo for (int i = 0; i < 10;
Más detallesUTN FRBA Algoritmos y Estructura de Datos Examen Final 13/02/2015. Apellido y nombre: Legajo: Cursó con Prof:
Sistema para el Seguimiento de Jugadores de Fútbol Temas evaluados: Resolución de problemas, estructuras de datos, archivos, listas, y lenguaje de programación. Contexto Usted es parte de un equipo que
Más detallesProgramación 1. Diseño modular de nuevos tipos de datos en un programa. Diseño modular de un tipo de dato con estructura de conjunto
Programación 1 Diseño modular de nuevos tipos de datos en un programa Diseño modular de un tipo de dato con estructura de conjunto 1 1. Objetivo de la lección Presentar una metodología para el diseño modular
Más detallesINTRODUCCIÓN AL LENGUAJE C++
Transparencias del libro Rodríguez Artalejo, M., González-Calero, P.A., Gómez Martín, M.A.: Estructuras de datos, un enfoque moderno. Editorial Complutense 2011. TEMA 0 INTRODUCCIÓN AL LENGUAJE C++ El
Más detallesProgramación 1 Tema 15. Trabajo con ficheros binarios
Programación 1 Tema 15 Trabajo con ficheros binarios Índice Ficheros binarios Diferencia con ficheros de texto Herramientas de C++ para trabajar con ficheros binarios Problemas básicos con ficheros binarios
Más detallesInformática PRÀCTICA 3 Curs Práctica Nº 3: Tipos de datos simples. Constantes y variables. Operadores aritméticos. Formato de salida.
Práctica Nº 3: Tipos de datos simples. Constantes y variables. Operadores aritméticos. Formato de salida. Objetivos de la práctica: - Mostrar la sintaxis de los diferentes tipos de datos presentes en C/C++.
Más detallesLABORATORIO #1 INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C++
LABORATORIO #1 INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C++ C++ es un lenguaje de programación diseñado por Bjarne Stroustrup a partir de 1979. La intención de su creación fue ampliar al exitoso lenguaje
Más detallesLaboratorio 5 Tema 7. Tipos de Datos Estructurados: Arreglos, Registros y Archivos
Laboratorio 5 Tema 7. Tipos de Datos Estructurados: Arreglos, Registros y Archivos PARTE 1. Arreglos Unidimensionales o Vectores Un arreglo es una estructura de datos conformada por una sucesión de celdas,
Más detalles1. Ejemplo de clase: La clase Disco 2. Ejemplo de clase: La clase Colección. 3. Relación entre clases: Clientismo
1. : La clase 2. : La clase Colección 3. Relación entre clases: Clientismo 1 Una clase para modelar el tipo de dato disco Vamos a modelar con una clase, un nuevo tipo de datos, donde los elementos de la
Más detallesIntroducción a los Computadores
Introducción a los Computadores Práctica nº 4 Introducción. Un tipo de datos estructurado es un tipo de datos formado por una colección organizada de componentes de algún otro tipo de datos. Podremos hacer
Más detallesEstructuras de Datos Declaraciones Tipos de Datos
Departamento de Informática Universidad Técnica Federico Santa María Estructuras de Datos Declaraciones Tipos de Datos Temas: 2-3-4 IWI-131, paralelo 01 Profesor: Teddy Alfaro O. Lenguaje de Programación
Más detallesDefinición. Una estructura es un grupo de datos que pueden ser de distintos tipos de datos, pero a los que se les ha asignado un único nombre.
Definición Una estructura es un grupo de datos que pueden ser de distintos tipos de datos, pero a los que se les ha asignado un único nombre. La utilización de estructuras perite organizar datos y tratar
Más detallesUNIDAD CURRICULAR: ALGORITMICA Y PROGRAMACIÓN UNIDAD IX. ESTRUCTURAS DE REGISTROS
UNIDAD CURRICULAR: ALGORITMICA Y PROGRAMACIÓN UNIDAD IX. ESTRUCTURAS DE REGISTROS CONTENIDO: Definición, declaración y acceso Estructura y arreglos Ejercicios Resueltos Referencias Bibliográficas UNIDAD
Más detallesPunteros. Índice. 1. Qué es un puntero y por que son importantes.
Punteros Índice 1. Qué es un puntero y por que son importantes. 2. Punteros a tipos básicos. 3. Punteros sin tipo. 4. Memoria dinámica. 5. Punteros a estructuras. 6. Punteros a matrices. 7. Punteros a
Más detallesPunteros y Memoria Dinámica I
Memoria Punteros y Memoria Dinámica I Curso INEM. Programación en C++ Santiago Muelas Pascual smuelas@fi.upm.es! Lugar donde almacenan los datos y las instrucciones! Compuesta de un gran número de bytes!
Más detallesGuía de estilo y buenas prácticas de programación en C/C++
Guía de estilo y buenas prácticas de programación en C/C++ Introducción A la hora de escribir código fuente en un determinado lenguaje de programación es aconsejable seguir unas guías de estilo. Esto te
Más detallesTema: FUNCIONES, PROCEDIMIENTOS Y RECURSIVIDAD.
Programación I, Guía 6 1 Facultad : Ingeniería Escuela : Computación Asignatura: Programación I Tema: FUNCIONES, PROCEDIMIENTOS Y RECURSIVIDAD. Objetivos Utilizar la sintaxis de las funciones definidas
Más detallesTema 3. Tipos de datos simples
Tema 3. Tipos de datos simples Contenido del tema: Concepto de tipo. Tipos simples. Operadores. Expresiones. Semántica. Tipos y expresiones en lenguaje C++ Francisco J. Veredas Dpto. Lenguajes y Ciencias
Más detallesCarlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas
2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos
Más detallesTema 1. Programación modular. Programación Avanzada Ingeniería Técnica en Informática de Gestión Jorge Badenas
Tema 1. Programación modular Programación Avanzada Ingeniería Técnica en Informática de Gestión Jorge Badenas 1.1. Objetivos Repasar brevemente mediante ejemplos los elementos principales del lenguaje
Más detallesUnidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones
Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice
Más detallesLenguaje de Programación
UG C++ C++ Universidad de Guanajuato Sesión 33 Una estructura es un grupo de variables las cuales pueden ser de diferentes tipos sostenidas o mantenidas juntas en una sola unidad. La unidad es la estructura.
Más detallesArboles Binarios de Búsqueda en C++
Arboles Binarios de Búsqueda en C++ por CCG/Mayo-2014 Tema de Arboles Binarios de Búsqueda, como un poco de teoría para su mejor entendimiento seguidamente mostrare la implementación en lenguaje de programación
Más detallesTema 5: Diseño modular. Índice. Notas. Programación 2. Curso 2014-2015. Notas. Ejemplo. La herramienta make. 1 Diseño modular.
: Programación 2 Curso 2014-2015 Índice 1 2 3 (1/2) Cuando el programa crece es necesario dividirlo en módulos Cada módulo agrupa una serie de funciones con algo en común El módulo puede reutilizarse en
Más detallesSegundo parcial de Programación 2
Generalidades: Segundo parcial de Programación 2 a. La prueba es individual y sin material. b. La duración es 3hs. c. Sólo se contestan dudas acerca de la letra. 8 de Julio de 2016 d. Escriba las hojas
Más detallesPlantillas (Templates)
Programación Orientada o Objetos Plantillas (Templates) Univesidad de Los Andes - Facultad de Ingeniería Escuela de Sistemas Programación Digital II Profesor: Gilberto Diaz gilberto@ula.ve Plantillas Los
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS GRADO EN INGENIERÍA INFORMÁTICA SEGUNDO CURSO DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO ESCUELA POLITÉCNICA SUPERIOR UNIVERSIDAD DE CÓRDOBA CURSO ACADÉMICO: 2011
Más detallesTema 6: Memoria dinámica
: Programación 2 Curso 2013-2014 Índice 1 2 3 El tamaño es fijo y se conoce al implementar el programa Declaración de variables int i=0; char c; float vf[3]={1.0, 2.0, 3.0}; i c vf[0] vf[1] vf[2] 0 1.0
Más detallesCaracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación
1 Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera Fundamentos de programación Agenda Caracteres y Cadenas Conversión de Datos Introducción a las funciones y procedimientos
Más detallesTipos de datos y clases de tipos
Tipos de datos y clases de tipos Taller de Álgebra I Verano 2017 Tipos de datos Tipo de dato Un conjunto de valores a los que se les puede aplicar un conjunto de funciones. Ejemplos 1 Integer = (Z, {+,,,
Más detallesREPRESENTACIÓN DE DATOS
REPRESENTACIÓN DE DATOS Tipos de datos primitivos Tipos de Datos Estructurados TIPOS DE DATOS SIMPLES O PRIMITIVOS Dato Longitud Rango 2 TIPOS DE DATOS SIMPLES O PRIMITIVOS Surgen de la necesidad de tener
Más detallesGuía de Referencia Rápida de C++ (std)
Guía de Referencia Rápida de C++ (std) Programa C++ // Inclusión de bibliotecas // Utilización de espacios de nombre // Definición de Constantes y Tipos // Definición de subprogramas // cuerpo del programa
Más detallesImplementación de las Clases Pila, Cola, Lista y Arbol
1/1 Implementación de las Clases Pila, Cola, Lista y Arbol Josefina Sierra Santibáñez 28 de noviembre de 2017 2/1 Implementación de Estructuras de Datos Implementaremos cada estructura de datos en dos
Más detallesIntroducción a la Programación
Introducción a la Programación Fundamentos de Programación Ingeniería Informática en Sistemas de Información Alicia Troncoso 1 Contenido l Introducción l Mi primer programa l Etapas a seguir en la programación
Más detallesTEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL.
Tema 2. TEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL. PARTE : VARIABLES, OPERADORES Y CONSTANTES.. INTRODUCCIÓN AL LENGUAJE C 2. PROGRAMAS BÁSICOS EN LENGUAJE C 3. DATOS EN LENGUAJE C
Más detallesIntroducción al lenguaje C
Introducción al lenguaje C Programación 2 Profesorado de Informática CeRP del Suroeste, Colonia, Uruguay 15 de marzo de 2016 Programación 2 Introducción al lenguaje C 15 de marzo de 2016 1 / 34 Objetivos
Más detallesObjetivos de la sesión. Aplicación de consola 7/30/11. Código con que se inicia un programa en Visual C# (aplicación de consola)
Objetivos de la sesión Entender el tipo de programas que se pueden realizar con aplicaciones de consola. Conocer el concepto de variable, la forma en que se declaran y su utilización. Conocer la forma
Más detallesInformática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales
UNA / AREA TRANSDEPARTAMENTAL DE ARTES MULTIMEDIALES Licenciatura en Artes Multimediales Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales JavaScript Algoritmo
Más detallesTema 2. Tipos y Estructuras Básicas
Tema 2. Tipos y Estructuras Básicas http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia, bmartine, morales, sanchiz}@icc.uji.es Estructuras de datos y de
Más detallesIntroducción a C++ Índice
Introducción a C++ 1. 2. 3. 4. 5. 6. Índice 1. Diferencias entre C y C++. 2. Diferencias entre C++ y Java. 3. Ejemplos. 4. Funciones. 5. Memoria dinámica 6. Librería de funciones. 1 1. Diferencias entre
Más detallesabril de 2017 Desarrollo de aplicaciones en Java Tipos de datos primitivos Tipos de datos Elementos de aplicaciones simples
Desarrollo de aplicaciones en Java Generación de código fuente Compilación Ejecución Elementos de aplicaciones simples EII147-01-02 Introducción a las tecnologías de información Escuela de Ingeniería Industrial
Más detallesINTRODUCCIÓN A LA POO EN C++
INTRODUCCIÓN A LA POO EN C++ ÍNDICE DEL TEMA 1.- Introducción 2.- Diferencias C/C++ 3.- Programación orientada a objetos 4.- Aspectos avanzados C++ 1 1. Introducción Lenguaje C Lenguaje de propósito general
Más detallesAPUNTADORES. Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable.
APUNTADORES Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. No hay que confundir una dirección de memoria con el contenido
Más detallesA continuación se mostrará un breve resumen del lenguaje, extraído del libro El Lenguaje de Programación C#.
C# C# es un lenguaje sencillo, moderno y orientado a objetos, que pertenece a la plataforma.net y es creado por Microsoft. A continuación se mostrará un breve resumen del lenguaje, extraído del libro El
Más detallesUnidad Didáctica 1. Introducción a la Programación Orientada a Objetos (POO) Conceptos de clase, objeto e interfaz. Atributos y métodos
Unidad Didáctica 1 Introducción a la Programación Orientada a Objetos (POO) Conceptos de clase, objeto e interfaz. Atributos y métodos Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos
Más detallesAnalista Universitario en Sistemas. Taller de Programación II. Instituto Politécnico Superior STRINGS
STRINGS 1 Strings (Cadena de caracteres) En C no existe un tipo de dato y operadores para el tratamiento de cadenas de caracteres de manera atómica Un string es una cadena de cero o más caracteres finalizados
Más detallesPRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos
ESCUELA DE INGENIERÍA DE SISTEMAS DEPARTAMENTO DE COMPUTACIÓN PROGRAMACIÓN 2 PRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos Contenido Introducción...1 Objeto...2 Atributo...2 Métodos...2 Clase...3
Más detallesIntroducción a C++ y Code::Blocks
Introducción a C++ y Práctica Imperativo Clase 1 Luis Agustín Nieto Departamento de Computación, FCEyN,Universidad de Buenos Aires. 28 de mayo de 2010 Menu de esta Tarde Funcional Vs. Imperativo (Intérprete
Más detallesCadenas de caracteres
Trabajo práctico Nº 6 (Trabajos con cadenas de caracteres y estructuras) Realiza el programa en Lenguaje C correspondiente. Cadenas de caracteres 1- Construir una función PASSWORD que pida por teclado
Más detallesEjercicios Tema 6. Funciones
Ejercicios Tema 6. Funciones 1. Programa que calcule el cuadrado de todos los números comprendidos entre dos dados. Usar una función a la que se le pasa como parámetro un valor y retorna su cuadrado. 2.
Más detallesTema 2: La clase string. Índice. Notas. Programación 2. Curso Notas. Definición Declaración Entrada / salida Métodos Operaciones
: string Programación 2 Curso 2013-2014 Índice 1 Cadenas de caracteres en C 2 Entrada / salida 3 entre vectores de caracteres y string 4 5 Cadenas de caracteres en C En C, las cadenas de caracteres tienen
Más detallesVariables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.
Variables Una variable no es más que un nombre simbólico que identifica una dirección de memoria: Suma el contenido de la posición 3001 y la 3002 y lo almacenas en la posición 3003 vs. total = cantidad1
Más detallesTEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS
TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS Una vez que ya sabes crear tus propios programas, vamos a analizar los fundamentos del lenguaje de programación C. Este capítulo incluye además los siguientes temas:
Más detallesClases. Definición de clases
Clases Definición de clases Conceptos de clase y objeto C# es un lenguaje orientado a objetos puro6, lo que significa que todo con lo que vamos a trabajar en este lenguaje son objetos. Un objeto es un
Más detallesDefinición y Conversión de datos. Agustín J. González ELO-329
Definición y Conversión de datos Agustín J. González ELO-329 1 Calificador Const El calificador const previene que un objeto sea modificado con posterioridad a su definición. El objeto calificado como
Más detallesMódulo. = Asignación = = Comp. de igualdad!= Com. de desigualdad <= Comp. menor o igual >= Comp. mayor o igual AND lógico OR lógica.
EQUIVALENCIAS BÁSICAS ENTRE PASCAL Y C A continuación se presentan algunas equivalencias básicas entre estos lenguajes de programación : Operadores en lenguaje C: Operador Descripción % Módulo = Asignación
Más detallesProblemas de Programación 1
Problemas de Programación 1 Grado en Ingeniería Informática Miguel Ángel Latre y Javier Martínez Área de Lenguajes y Sistemas Informáticos Departamento de Informática e Ingeniería de Sistemas Curso 2017-18
Más detalles26 de Octubre del 2013
Hernánz Hernánz OMIJAL 26 Octubre l 2013 Contenidos Hernánz 1 2 3 4 ++ 5 6 7 Hernánz Concepto Un concepto es una ia, algo abstracto. No existe en la naturaleza. Palabras Herramientas que utilizamos para
Más detalles1.1 Tipos de Datos Primitivos. 1.2 Tipos de datos estructurados. 1.3 Definición de estructura de datos
1.1 Tipos de Datos Primitivos 1.2 Tipos de datos estructurados 1.2.1 Arreglos unidimensionales, bidimensionales y cadenas de caracteres 1.2.2 Registros o Estructuras (unión y estructura) 1.3 Definición
Más detallesInformática PRÀCTICA 9 Curs Práctica Nº 9: Rango y precisión de representación de números en el ordenador.
Departamento de Práctica Nº 9: Rango y precisión de representación de números en el ordenador. Uso de punteros Objetivos de la práctica: - Entender la representación de números (enteros y reales) en el
Más detallesProgramación orientada a objetos I
Introducción Programación orientada a objetos I Curso INEM. Programación en C++ Santiago Muelas Pascual smuelas@fi.upm.es Qué es la POO? Un paradigma de programación Un paradigma es una forma de afrontar
Más detallesTema 05: Elementos de un programa en C
Tema 05: Elementos de un programa en C M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A. Franco) 1
Más detallesProcesadores de lenguaje Tema 6 La tabla de símbolos
Procesadores de lenguaje Tema 6 La tabla de símbolos Departamento de Ciencias de la Computación Universidad de Alcalá Resumen La tabla de símbolos. Requerimientos de información. Diseño de la tabla de
Más detallesInformática Lección 5. Arreglos (vectores) Curso Pedro Álvarez y José Ángel Bañares 2/11/2010. Dpto. Informática e Ingeniería de Sistemas.
Fundamentos de Informática Lección 5. Arreglos (vectores) Curso 2010-2011 Pedro Álvarez y José Ángel Bañares 2/11/2010. Dpto. Informática e Ingeniería de Sistemas. Índice de contenidos Arreglos: Concepto
Más detallesTema 2. Tipos predefinidos
Programación Declarativa Haskell Informática Sistemas Curso 2003-2004 Pepe Gallardo Universidad de Málaga Tema 2. Tipos predefinidos 2.1 Tipos simples predefinidos El tipo Bool El tipo Int El tipo Integer
Más detallesFundamentos Programación Orientada a Objetos ( POO ) - Parte I Desarrollo de Software
República Bolivariana de Venezuela Ministerio de Educación Superior Fundación Misión Sucre Aldea Fray Pedro de Agreda Fundamentos Programación Orientada a Objetos ( POO ) - Parte I 1 Contenido Qué es
Más detallesContenidos. Funciones (suplemento) Funciones. Justificación del uso de Funciones
Contenidos 1. Justificación del uso de funciones. 2. Declaración de funciones: prototipos. 3. Prototipos y ficheros de cabecera. 4. Polimorfismo (sobrecarga de funciones). 5. Argumentos formales y actuales.
Más detallesHoja de ejercicios del Tema 9
Facultad de Informática Universidad Complutense Fundamentos de la programación Curso 2013 2014 Hoja de ejercicios del Tema 9 1. Sin ejecutarlo, qué mostraría el siguiente código? int x = 5, y = 12, z;
Más detallesDesarrollo de Programas. Prof. Lisbeth C. Pérez Rivas
Desarrollo de Programas Prof. Lisbeth C. Pérez Rivas lisbethpe@ula.ve Desarrollo de Programas Ejercicio: Calcular el sueldo neto de un trabajador conociendo el número de horas trabajadas, la tarifa horaria
Más detallesLa Herencia. La primera línea de cada declaración debe incluir la sintaxis siguiente:
La Herencia Es la capacidad de compartir atributos y métodos entre clases. Es la propiedad que permite definir nuevas clases usando como base clases ya existentes. La nueva clase (clase derivada) hereda
Más detallesAbstracción en Programación
Abstracción en Programación Abstracción: Operación intelectual que ignora selectivamente partes de un todo para facilitar su comprensión. Abstracción en la resolución de problemas: Ignorar detalles específicos
Más detallesCapitulo V Listas Enlazadas
Capitulo V Listas Enlazadas Muere lentamente, quien abandona un proyecto antes de iniciarlo, no preguntando de un asunto que desconoce o no respondiendo cuando le indagan sobre algo que sabe. Evitemos
Más detallesUNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO.
UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. TRUJILLO 1.- Resumen de Prog1 Comentarios es C++ Declaraciones de variables.
Más detallesTema 2. Memoria Dinámica. 2.1 Datos estáticos y dinámicos
Tema 2 Memoria Dinámica 2.1 Datos estáticos y dinámicos Datos estáticos: su tamaño y forma es constante durante la ejecución de un programa y por tanto se determinan en tiempo de compilación. El ejemplo
Más detallesProgramación Avanzada CONCEPTOS BÁSICOS DE IMPLEMENTACIÓN EN C++
Programación Avanzada CONCEPTOS BÁSICOS DE IMPLEMENTACIÓN EN C++ OBJETIVO En este documento se presentan las construcciones básicas de orientación a objetos del lenguaje de programación C++, y recomendaciones
Más detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 1: Punteros Objetivos Se hará hincapié en la aritmética de punteros
Más detallesESTRUCTURA DE DATOS. Memoria estática Memoria dinámica Tipo puntero Declaración de punteros Gestión de memoria dinámica Resumen ejemplo
ESTRUCTURA DE DATOS Memoria estática Memoria dinámica Tipo puntero Declaración de punteros Gestión de memoria dinámica Resumen ejemplo DATOS ESTÁTICOS Su tamaño y forma es constante durante la ejecución
Más detallesIntroducción a la Programación en C Funciones
Christopher Expósito-Izquierdo cexposit@ull.edu.es Airam Expósito-Márquez aexposim@ull.edu.es Israel López-Plata ilopezpl@ull.edu.es Belén Melián-Batista mbmelian@ull.edu.es José Marcos Moreno-Vega jmmoreno@ull.edu.es
Más detalles1. Ejemplo de clase : La clase Cuenta 2. Uso de la clase Cuenta. 3. Métodos y objetos receptores de mensajes (Importante)
1. : La clase Cuenta. Uso de la clase Cuenta 3. Métodos y objetos receptores de mensajes (Importante) 1 Una clase para cuentas de un banco Vamos a modelar con una clase, un nuevo tipo de datos, donde los
Más detallesUnidad V. Ya veremos qué poner en "algunas_palabras" y "algo_más", por ahora sigamos un poco más.
Implementación Orientada a Objetos. Unidad V 5.1 Estructura de una clase. Una clase consiste en: algunas_palabras class nombre_de_la_clase [algo_más] { [lista_de_atributos] [lista_de_métodos] Lo que está
Más detallesExamen Principios de Programación Febrero 2012
Por favor siga las siguientes indicaciones: Escriba con lápiz. Escriba su nombre y número de documento en todas las hojas que entregue. Numere las hojas e indique el total de hojas en la primera de ellas.
Más detalles