Foros del Web » Programación para mayores de 30 ;) » C/C++ »

ejercicio en c++ final curso

Estas en el tema de ejercicio en c++ final curso en el foro de C/C++ en Foros del Web. estoy haciendo un curso en c++ el cual ya ha terminado pero ante la falta de tiempo he tenido que ver los ultimos temas un ...
  #1 (permalink)  
Antiguo 01/06/2010, 05:54
 
Fecha de Ingreso: noviembre-2009
Mensajes: 15
Antigüedad: 14 años, 5 meses
Puntos: 0
ejercicio en c++ final curso

estoy haciendo un curso en c++ el cual ya ha terminado pero ante la falta de tiempo he tenido que ver los ultimos temas un poco deprisa y casi sin comprenderlos y ahora me han mandado el ejercicio final para poder darme el certificado de realizacion y me falta la ultima cuestion que no soy capaz de resolver, por eso os pido un poco de ayuda ya que tengo que entregarlo ya.

el codigo es el siguiente:


// FECHA: --------------
// AUTOR: -----------------
#include <iostream>
#include <stdlib.h>
#include <cstring>
using namespace std;
//---------------Clase base Cmedio-------------------------
class Cmedio
{
protected:
char titulo[50];
float precio;
public:
Cmedio (char *s, float a)
{
strcpy(titulo,s);
precio = a;
}
virtual void mostrar() {} // función virtual vacia
};
//---------------Clase derivada Clibro-----------------------
class Clibro: public Cmedio
{
int paginas;
public:
Clibro (char *s, float a ,int p) : Cmedio (s,a)
{
paginas = p;
}
virtual void mostrar();
};
//---------------Clase derivada Ccinta---------------------
class Ccinta: public Cmedio
{
float duracion;
public:
Ccinta (char *s, float a ,float t) : Cmedio (s,a)
{
duracion = t;
}
virtual void mostrar();
};
//---------------Clase derivada Clibroe--------------------
class Clibroe: public Cmedio
{
int megabytes;
public:
Clibroe (char *s, float a, int mb) : Cmedio (s,a)
{
megabytes = mb;
}
virtual void mostrar();
};
void Clibro :: mostrar()
{
cout << "Tilulo: " << titulo << endl;
cout << "Paginas: " << paginas << endl;
cout << "Precio: " << precio << endl;
system("PAUSE");
}
void Ccinta :: mostrar()
{
cout << "Tilulo: " << titulo << endl;
cout << "Duracion: " << duracion << " minutos" << endl;
cout << "Precio: " << precio << endl;
system("PAUSE");
}
void Clibroe :: mostrar()
{
cout << "Titulo: " << titulo << endl;
cout << "Precio: " << precio << endl;
cout << "Tama\xa4o: " << megabytes << " MB " << endl;
system("PAUSE");
}
//------------- PROGRAMA PRINCIPAL--------------------
int main()
{
char * titulo = new char[30];
float precio, duracion;
int paginas, megabytes;
// CREAR LIBRO
cout << "Tilulo: "; cin >> titulo ;
cout << "Paginas: "; cin >> paginas ;
cout << "Precio: "; cin >> precio ;
Clibro libro1(titulo,precio,paginas);
// CREAR CINTA
cout << "Tilulo: "; cin >> titulo ;
cout << "Duracion: "; cin >> duracion ;
cout << "Precio: "; cin >> precio ;
Ccinta cinta1(titulo,precio,duracion);
// CREAR LIBROE
cout << "Titulo : "; cin >> titulo ;
cout << "Precio : "; cin >> precio ;
cout << "Tama\xa4o : "; cin >> megabytes ;
Clibroe libroe1(titulo,precio,megabytes);
//---------MUESTRA LOS DATOS DE CADA OBJETO-----
libro1.mostrar();
cinta1.mostrar();
libroe1.mostrar();
return 0;
}




Ejercicios propuestos:
1.- Corregir los errores sintácticos.
ya los he realizado

2.- Suponed que ahora la librería pude vender libros electrónicos, para estos libros además del título y el precio es
necesario guardar su tamaño en megabytes. Modificad el código anterior para que permita gestionar este nuevo
tipo de productos. Justificad mediante comentarios en el programa las decisiones tomadas. El programa debe crear y mostrar un libro normal, una cinta y un libro electrónico.
realizado a falta de los comentarios

3.- Teniendo presente que la función mostrar() ha sido declarada como virtual en la clase base Cmedio, cread en
el programa principal una lista heterogénea de punteros de tipo Cmedio, para los tres objetos que hemos creado
libro1, cinta1,libroe1. Mediante una estructura repetitiva mostrar los datos de cada objeto utilizando la lista de
punteros. Justificad mediante comentarios en el programa las decisiones tomadas.

este es el que no soy capaz de realizar




gracias de todas formas.
  #2 (permalink)  
Antiguo 01/06/2010, 07:09
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: ejercicio en c++ final curso

Todas tus aportaciones en el foro han sido para que te resolvieran los deberes. Creo que una persona que, después de haberla ayudado no ha conseguido aprender lo suficiente como para resolver el ejercicio final... o tienes que estudiar más o tienes que estudiar más, pero no creo que resolvertelo te sirva de mucho. Recuerda que el objetivo de hacer un curso es aprender y querer sacarte el curso de esta forma es engañar a los demás y engañarte a ti mismo.

Por el bien de la profesión espero que nadie te resuelva el ejercicio directamente. Otra cosa es que tengas alguna duda puntual sobre algun tema de C++ y se te resuelva, pero de forma concreta y específica el ejercicio... no.

Empieza por analizar porque no puedes contestar el tercer ejercicio, no vale un "no me sale". No te sale porque? Que es lo que no sabes hacer?
__________________
Aviso: No se resuelven dudas por MP!
  #3 (permalink)  
Antiguo 01/06/2010, 07:41
 
Fecha de Ingreso: noviembre-2009
Mensajes: 15
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: ejercicio en c++ final curso

no te voy quitar la razon, pero si voy a puntualizar:
me apunto a los cursos con mucha ilusion y con el de aprender pero con el inconveniente de la falta de tiempo, trabajar por la mañana y cuando llego a casa el cuidado de 2 niños pequeños, cuando quiero ponerme a estudiar son las 11 de la noche; y como los cursos suelen hacerlos intensivos pues uno va estudiando o leyendo los temas a marcha forzada y casi sin entenderlos con el fin de terminarlos para que te den el certificado de aprovechamiento, y luego por mi parte pero ya sin la presion de una fecha de finalizacion y a base de buscar manuales y videotutoriales ya profundizo mas sobre el curso realizado. Se que tengo que intentar resolver los ejercicios por mi mismo pero con la solucion tambien se aprende si se estudia bien de donde han salido las respuestas, pero eso con mas tranquilidad.
  #4 (permalink)  
Antiguo 01/06/2010, 08:29
 
Fecha de Ingreso: noviembre-2009
Mensajes: 15
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: ejercicio en c++ final curso

a que se refiere donde dice " lista heterogénea de punteros de tipo Cmedio"

Etiquetas: curso, final
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:07.