Sei sulla pagina 1di 4

Universidad Nacional del Litoral

Facultad de Ingeniería y Ciencias Hídricas


Departamento de Informática

Ingeniería Informática
PROGRAMACIÓN ORIENTADA
A OBJETOS

UNIDAD 2
Introducción a la Programación
Orientada a Objetos
2009
Unidad 2 2

UNIDAD 2
Introducción a la Programación
Orientada a Objetos

Material de estudio sugerido


Para poder leer acerca de los contenidos referidos a los temas de esta Unidad
2, debe ingresar a la plataforma Moodle de nuestra asignatura y bajar el mate-
rial de estudio sugerido en la Unidad 2. El material propuesto es el siguiente:
• Temas y conceptos: extraerlos de la presentación desarrollada en clase de
teoría. Archivo: POO-Unidad2-2009.ppt
• Libro: “Metodología de la Programación: POO”. Autor: desconocido. Direc-
ción: http://www.scribd.com/doc/13896316/Metodologia-de-la-programacion-
orientada-a-objetos-con-C+ . Comentario: Bueno, explicación clara y senci-
lla.
• Libro: “Curso de C++”. Capítulos 28 al 32 (son capítulos muy cortos). Autor:
Salvador Pozo Coronado. Comentario: Regular, ejemplos muy simples.
http://tchefonsecalfaro.files.wordpress.com/2009/03/cursocpp_programa-
cion_c.pdf
• Tutorial: “Programación en C++”. Capítulo 14: “Clases y Objetos en C++”.
Autor: Josué Díaz Cuenca. Comentario: Bueno.
http://www.mailxmail.com/curso-programacion-c/objetos-clases-1
• Libro: “Thinking in C++”. Volumen1-en Español. Autor: Bruce Eckel. Capítulo
1: “Introducción a los objetos”. Comentario: Muy bueno. Sugerencia: LEER
EL CAP 1. DESPUES de completar las actividades de práctica. Es conside-
rado el mejor libro de C++, pero empieza con C++ desde cero, partiendo del
modelo de objetos. Archivo: Thinking in C++ - Volumen1-Español.pdf. .

Actividades

Ejercicios
Ejercicio 2.1
Diseñe una clase cilindro que modele un cilindro. El objetivo es emplear esa clase
para calcular el volumen del cuerpo conociendo el radio y la altura del mismo. Pro-

FICH - UNL
Programación Orientada a Objetos-2009
Unidad 2 3

ponga métodos para asignar los datos del problema a través de parámetros, calcu-
lar el volumen y mostrar el resultado.

Ejercicio 2.2
Escriba un programa C++ que utilice la clase cilindro. Defina 2 instancias llamadas
c1 y c2. El objeto c1 debe utilizar datos que se ingresan interactivamente; para c2,
utilice 5.3cm y 10.2cm para el radio y la altura respectivamente.

Ejercicio 2.3
Rescriba la clase y el programa del cilindro de forma de emplear un constructor
para inicializar el radio y la altura.

Ejercicio 2.4
Proponga un POO en C++ para resolver la ecuación cuadrática ax2+bx+c=0. Los
datos son los coeficientes a, b y c. Si las raíces fueran complejas, mostrarlas en la
forma binómica a+bi .

Ejercicio 2.5
Escriba un programa C++ OO que permita leer una lista de alumnos y las califica-
ciones obtenidas por ellos en un curso. Determine la calificación promedio del cur-
so, la mejor nota y el alumno que la obtuvo.

Ejercicio 2.6
Modifique la clase cilindro del ejercicio 2.3 planteando un constructor sobrecargado
que permita asignar valores por defecto en el caso de que se lo invoque sin pará-
metros. Pruebe esta clase en un programa.

Ejercicio 2.7
Un objeto puede ser asignado a otro de la misma clase. En base a la afirmación
anterior a) Determine la salida del siguiente programa; b) Pruebe el programa.

// Copia de objetos
#include <iostream.h>

class fecha {
public:
// constructor por defecto
fecha( int = 1, int = 1, int = 2000 );
void mostrar();
private:
int mes;
int dia;
int anio;
};

// constructor fecha
fecha::fecha( int d, int m, int y )
{
dia = d;
mes = m;
anio = y;
}

FICH - UNL
Programación Orientada a Objetos-2009
Unidad 2 4

// Mostrar la Fecha con formato dd-mm-aaaa


void fecha::mostrar()
{ cout << dia << mes<< '-' << anio; }

int main()
{
fecha fecha1( 4, 7, 2003 ), fecha2;
cout << "Fecha1 = ";
fecha1.mostrar();
cout << "\nFecha2 = ";
fecha2.mostrar();

fecha2 = fecha1;
cout << "\n\nDespués de copia a nivel de miembros: Fe-
cha2 = "; fecha2.mostrar();
cout << endl;

return 0;
}

Ejercicio 2.8
Crear una clase CRectangulo que permita calcular el área y perímetro de un rec-
tángulo. El diseño de la clase debe permitir crear objetos de este tipo conociendo
indistintamente la base y la altura, o bien, las 4 coordenadas x,y de sus vértices.
La clase debe disponer de un método EsCuadrado() que informe si el rectángulo
conforma o no un cuadrado.

Ejercicio 2.9
Observe el diseño de la clase Fecha del recuadro.

class fecha {
// constructor por defecto
fecha( int = 1, int = 1, int = 2000 );
void mostrar();
int mes;
int dia;
int anio;
};

Al compilar un programa que trate de instanciar un objeto de tipo fecha se produce


un error. a) ¿Por qué?; b) Corrija el error.

FICH - UNL
Programación Orientada a Objetos-2009

Potrebbero piacerti anche