PROGRAMACIÓN ORIENTADA A OBJETOS

Documentos relacionados
PROGRAMACIÓN ORIENTADA A OBJETOS

Lenguajes de Inteligencia Artificial Segundo curso. Primer cuatrimestre

Tema 7.- Fundamentos de la Programación Orientada a Objetos

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES TRABAJO DE PRÁCTICAS. Convocatoria de junio de 2013

PROCESADORES DE LENGUAJE. Hoja de ejercicios de FLEX

Tema: Clases y Objetos en C#. Parte II.

ECUACIÓN DE LA RECTA

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática

ECUACIÓN GENERAL DE LA RECTA

Programación orientada a objetos. Capítulo 8 Mejora de las estructuras mediante herencia

DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA

Ecuaciones Lineales en Dos Variables

Práctica 1 de Excel (Curso )

Escuela Politécnica Superior de Elche

FUNDAMENTOS DE INFORMÁTICA

Rectas y planos en el espacio

Lenguajes de Programación Curso Práctica 4. Herencia. Utilización de interfaces y clases abstractas. 1. Interfaces Clases abstractas 2

Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF

Las clases como tipos de datos definidos por el usuario

$0 Representa al parámetro cero o nombre del programa $1 Representa al parámetro uno $2 Representa al parámetro dos

MÓDULO SE: SISTEMAS DE ECUACIONES

5. Subprogramas Fundamentos de Informática

Manual de turbo pascal

Funciones. Parámetros por valor

Elabore el diagrama de clases en UML y la codificación de un programa para resolver los siguientes problemas:

Cuando no está abierto ningún menú, las teclas activas para poder desplazarse a través de la hoja son:

Ficheros conceptos. Manejo de ficheros en C. Apertura del fichero Función fopen: nombre del fichero. Apertura del fichero Función fopen

es el lugar geométrico de los puntos p tales que p 0 p n o p 0 p o. p x ; y ; z perteneciente a y un vector no

Ecuación de la recta. Ing. Jonathan Alejandro Cortés Montes de Oca. Calculo Vectorial INSTITUTO POLITÉCNICO NACIONAL.

Objetivos 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)

PROBLEMAS RESUELTOS SELECTIVIDAD ANDALUCÍA 2010 MATEMÁTICAS II TEMA 3: ESPACIO AFIN Y EUCLIDEO

ECUACIÓN DE LA RECTA. Dibujando los ejes de coordenadas y representando el punto vemos que está situado sobre el eje de abscisas.

Principios de Computadoras II

ATRIBUTOS DE LOS FICHEROS EN LINUX

Álgebra Lineal Ma1010

Tema 3.- Predicados y sentencias condicionales

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

Rectas y Planos en el Espacio

FUNDAMENTOS DEL ÁLGEBRA. Folleto De Trabajo Para La Clase ECUACIONES LINEALES EN DOS VARIABLES

UNIDAD 8 Geometría analítica

UNPSJB - Facultad Ciencias Naturales - Asignatura: Matemática 1 Ciclo Lectivo: 2014 CONICAS

PROFR.: JULIO C. JIMÉNEZ RAMÍREZ GRUPOS: TODOS LOS ALUMNOS IRREGULARES EPOEM No.16 TRUNO: VESPETINO

1. Definir e identificar números primos y números compuestos.

GEOMETRÍA ANALÍTICA 2º Curso de Bachillerato 22 de mayo de 2008

PROBLEMAS RESUELTOS SELECTIVIDAD ANDALUCÍA 2009 MATEMÁTICAS II TEMA 3: ESPACIO AFIN Y EUCLIDEO

Números. 1. Definir e identificar números primos y números compuestos.

13 FUNCIONES LINEALES Y CUADRÁTICAS

Java Avanzado Facultad de Ingeniería. Escuela de computación.

Ecuaciones, ecuación de la recta y sistemas

Álgebra y Trigonometría Clase 2 Ecuaciones, desigualdades y Funciones

SISTEMAS DE ECUACIONES LINEALES. Método de reducción o de Gauss. 1º DE BACHILLERATO DPTO DE MATEMÁTICAS COLEGIO MARAVILLAS AUTORA: Teresa González.

SOLICITUD DE PREINSCRIPCIÓN EN TÍTULOS PROPIOS UNIVERSIDAD REY JUAN CARLOS CURSO ACADÉMICO

Diseño Basado en Componentes. Curso 2008 / 09

Test : Conteste exclusivamente en una HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.

Tema ADQUISICIÓN Y TRATAMIENTO DE DATOS. Departamento de Ciencias de la Computación e IA. Subprogramas en C

Programación. Práctica Final

Aunque cada servicio es diferente, por lo general hay varios niveles de privacidad para elegir. A veces se les llama niveles de acceso.

Interprete comandos de Windows.

PRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos

Práctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros

b) Qué tipo de variable son las de la línea 6? Cuál es su visibilidad? Explique su

Depto. de Matemáticas Guía Teórico-Practico Unidad : Secciones Cónicas Tema: Ecuación de la circunferencia Nombre: Curso:

Unidad 2: Ecuaciones, inecuaciones y sistemas.

PROGRAMACION ORIENTADA A OBJETOS EN C++

PROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I

Función lineal Ecuación de la recta

CURSO DE LENGUAJE C. 4.1 Conceptos básicos de funciones 4.2 Funciones que regresan valores no enteros 4.3 Variables externas 4.4 Reglas de alcance

En este artículo vamos a conocer los tipos de datos que podemos manejar programando en C.

funciones printf scanf

Una variable, y, es función de otra, x, si existe una relación entre ambas de forma tal que: para cada valor de x existe solamente uno de y

Mecanografía (segunda parte) Autor: Editorial McGraw-Hill

CLASES QUE UTILIZAN OBJETOS. RELACIÓN DE USO ENTRE CLASES JAVA. CONCEPTO DE DIAGRAMA DE CLASES. (CU00641B)

UNIDAD: ÁLGEBRA Y FUNCIONES ECUACIÓN DE LA RECTA

TEMA 7: Ficheros. TEMA 7: Ficheros Concepto de fichero

Métodos que devuelven valor Dado el siguiente triángulo rectángulo:

ELEMENTOS DE GEOMETRÍA. Eduardo P. Serrano

Ax + By + C = 0. Que también puede escribirse como. ax + by + c = 0 y que se conoce como: la ecuación general de la línea recta

Programación Orientada a Objetos en Java

UNIVERSIDAD AUTÓNOMA DE CHIAPAS LICENCIATURA EN SISTEMAS COMPUTACIONALES

QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B)

EJERCICIOS DE SELECTIVIDAD LOGSE en EXTREMADURA MATRICES, DETERMINANTES Y SISTEMAS DE ECUACIONES

INTRODUCCIÓN...9 CAPÍTULO 1. ELEMENTOS DE UN PROGRAMA INFORMÁTICO...11

El haz de planos paralelos queda determinado por un vector normal, n A, B,

: Algorítmica y Estructura de Datos I

GUIA 2: Repaso sobre uso de C#. Funciones, métodos y arreglos.

TEMA 2 Introducción a C# ANÁLISIS Y DESARROLLO DE APLICACIONES INFORMÁTICAS Curso 2010/2011

Paseo por SIGAD ÍNDICE. Introducción...2. Acceso a la aplicación...3

Práctica 2 Gráficos Vectoriales con SVG (versión )

Materia: Matemática de 5to Tema: Método de Cramer. Marco Teórico

Computación Avanzada Clase 3. Mauricio Hidalgo Barrientos

Universidad de Costa Rica Instituto Tecnológico de Costa Rica. Segmentos y rectas

Veamos sus vectores de posición: que es la ecuación vectorial de la recta:

Algoritmos y programas. Algoritmos y Estructuras de Datos I

MANUAL DE USUARIO DEL INTERNET HOME BANKING

Problemas de exámenes de Geometría

PROBLEMAS RESUELTOS SELECTIVIDAD ANDALUCÍA 2001 MATEMÁTICAS II TEMA 3: ESPACIO AFIN Y EUCLIDEO

520142: ALGEBRA y ALGEBRA LINEAL

FUNCIÓN LINEAL FUNCIÓN CONSTANTE - RELACIÓN LINEAL

Transcripción:

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 2012 Número de práctica: 2 Objetivos Definir clases que permitan manejar tipos abstractos de datos utilizando el punto de vista de la programación orientada a objetos. Clase Punto2D Clase Recta2D Conceptos básicos de las clases en C++ Parte pública y parte privada Atributos Funciones o métodos Constructores Constructor parametrizado con valores por defecto Constructor de copia Calificador const en los métodos de acceso Funciones auxiliares de una clase. Utilización de los comentarios de doxygen Descripción Se deben codificar las funciones de las clases Punto2D y Recta2D para que funcione correctamente el programa codificado en el fichero practica_2.cpp Las clases y las funciones auxiliares se deben integrar en el espacio de nombres poo para el código desarrollado en la asignatura. Se deben codificar los siguientes ficheros punto2d.hpp punto2d.cpp recta2d.hpp recta2d.cpp makefile 1

Fichero punto2d.hpp Declaración de la clase Punto2D Atributos privados Coordenadas x e y del punto en el plano euclídeo P = (x, y) Las coordenadas son del tipo real de punto flotante. Funciones o métodos públicos Constructor: Punto2D Versión 1: constructor parametrizado con valores por defecto Recibe como parámetros a las coordenadas x e y y crea un objeto del tipo Punto2D con las coordenadas indicadas. Esta función tiene argumentos por defecto. El valor por defecto de los parámetros es 0.0 Versión 2: constructor de copia Recibe como parámetro un Punto2D q pasado por referencia constante y crea otro Punto2D con una copia de los valores del parámetro q. Consulta getx: devuelve el atributo x de un Punto2D gety: devuelve el atributo y de un Punto2D Aviso: estas funciones deben utilizar el calificador const Modificación setx: Recibe un valor numérico v y se lo asigna a la componente x del Punto2D. sety: Recibe un valor numérico v y se lo asigna a la componente y del Punto2D. Funciones de lectura o escritura leerpunto2d Lee desde el teclado las coordenadas y se las asigna al Punto2D. escribirpunto2d: Escribe por pantalla las coordenadas del Punto2D de la forma (x, y). Observación: Las únicas funciones que podrán acceder directamente a los 2

datos privados de Punto2D serán las funciones de acceso (getx y gety) y de modificación (setx y sety). Las demás funciones podrán acceder a los datos privados a través de las funciones de acceso y modificación Las versiones del constructor y las funciones de consulta y modificación se codificarán inline. Función auxiliar de la clase Punto2D Observación Esta función no pertenece a la clase calculardistanciaeuclidea2d Recibe dos Puntos2D y devuelve su distancia euclídea. Si P1 = (x1, y1) y P2 = (x2, y2) entonces d(p1,p2) = x2 x1 2 y2 y1 2 Fichero punto2d.cpp Debe contener el código de las siguiente funciones Funciones de lectura y escritura de la clase Punto2D leerpunto2d escribirpunto2d Función auxiliar de la clase Punto2D calculardistanciaeuclidea2d Se recuerda que la función auxiliar también pertenece al espacio de nombre poo Fichero recta2d.hpp Declaración de la clase Recta2D Atributos privados Coeficientes a, b y c de la recta en el plano euclídeo. a X + b Y + c = 0 Los coeficientes son del tipo real de punto flotante. Funciones o métodos públicos Constructor: Recta2D Versión 1: constructor parametrizado con valores por defecto Recibe como parámetros a los coeficientes a, b y c y y crea un objeto del tipo Recta2D con los coeficientes indicados. Esta función tienen argumentos por defecto. El valor por defecto de los coeficientes es 1.0, que permitirá crear la recta X + Y + 1 = 0 3

Versión 2: constructor de copia Recibe como parámetro una Recta2D s pasada por referencia constante y crea otra Recta2D con una copia de los valores del parámetro s. Versión 3: Recibe dos Puntos2D p1 y p2 y crea la recta que pasa por dichos puntos. Consulta geta: devuelve el atributo a de la Recta2D. getb: devuelve el atributo b de la Recta2D. getc: devuelve el atributo c de la Recta2D. Aviso: estas funciones deben utilizar el calificador const Modificación seta: recibe un valor numérico v y le asigna dicho valor al coeficiente a de la Recta2D. setb: recibe un valor numérico v y le asigna dicho valor al coeficiente b de la Recta2D. setc: recibe un valor numérico v y le asigna dicho valor al coeficiente c de la Recta2D. Funciones de lectura o escritura leerrecta2d Lee desde el teclado los coeficientes y se los asigna a la Recta2D. escribirrecta2d: Escribe por pantalla la ecuación de la Recta2D a X + b Y + C = 0. Se valorarán las siguientes mejoras Escribir correctamente el signo de los coeficientes Omitir los coeficientes nulos. Si un coeficiente vale 1 entonces solamente se ha de escribir la incógnita Por ejemplo r: 3 x - 1 y + 0 = 0 Se podría escribir r: 3 x - y = 0 Observación: Las únicas funciones que podrán acceder directamente a los datos privados de Recta2D serán las funciones de acceso (geta, getb y getc) y de modificación (seta, setb y setc). Las demás funciones podrán acceder a los datos privados a través de las funciones acceso y modificación. Las versiones del constructor y las funciones de consulta y modificación se codificarán inline. 4

Funciones auxiliares de la clase Recta2D Observación Estas funciones no pertenecen a la clase calculardistanciapunto2drecta2d Recibe un Punto2D p y una Recta2D r y calcula la distancia del punto a la recta Observación Si el punto p = (x0, y0) y la recta es ax + b Y + c = 0 entonces la distancia del punto a la recta es a x0 b y0 c d(p,r) = a a b b sonrectas2dperpendiculares Recibe dos Rectas2D r1 y r2 comprueba si son perpendiculares Las rectas r1: a1 X + b1 Y + c1 = 0 r2: a2 X + b2 Y + c2 = 0 son perpendiculares si a1 * a2 + b1 * b2 = 0.0 El valor devuelto ha de ser de tipo bool sonrectas2dparalelas Recibe dos Rectas2D r1 y r2 comprueba si son paralelas Las rectas r1: a1 X + b1 Y + c1 = 0 r2: a2 X + b2 Y + c2 = 0 son paralelas si a1 * b2 - b1 * a2 = 0.0 El valor devuelto ha de ser de tipo bool Fichero recta2d.cpp Debe contener el código de las siguiente funciones Funciones de lectura y escritura de la clase Recta2D leerrecta2d escribirrecta2d Funciones auxiliares de la clase Recta2D calculardistanciapunto2drecta2d sonrectas2dperpendiculares sonrectas2dparalelas Se recuerda que las funciones auxiliares también pertenecen al espacio de nombre poo 5