Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Polimorfismo simple c++, Ejercicios de Programación Informática

Pequeño ejemplo de polimorfismo POO

Tipo: Ejercicios

2016/2017

Subido el 05/09/2017

jd-anthon-s-ojeda
jd-anthon-s-ojeda 🇵🇪

2 documentos

1 / 2

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
#include <iostream>
#include <stdlib.h>
using namespace std;
/**************************************************************/
class Persona //clase padre o superclase
{
private: //atributos
string nombre; //cadena
int edad; //entero
public: //metodos
Persona(string,int); //constructor
virtual void mostrar(); //virtual funcion de polimorfismo - muestra 2 valores
};
Persona :: Persona (string _nombre, int _edad)
{
nombre = _nombre;
edad = _edad;
}
void Persona :: mostrar()
{
cout << "nombre: "<< nombre << endl;
cout << "edad: " << edad << endl;
}
/**********************************************************/
class Alumno : public Persona //herencia clase hija
{
private:
float notaFinal;
public:
Alumno (string , int, float);
void mostrar (); //cumpliendo el polimorfismo (igual nombre) muestra 3
};
Alumno :: Alumno (string _nombre, int _edad, float _notaFinal) : Persona (_nombre, _edad)
{
notaFinal = _notaFinal;
}
void Alumno :: mostrar () // = al de persona
{
Persona :: mostrar(); //llamamos al metodo mostrar de la classe persona (herencia)
cout << "nota final: "<<notaFinal <<endl;
}
/*****************************************************************/
class Profesor : public Persona
{
private:
string materia;
public:
Profesor(string,int,string);
void mostrar();
pf2

Vista previa parcial del texto

¡Descarga Polimorfismo simple c++ y más Ejercicios en PDF de Programación Informática solo en Docsity!

#include #include <stdlib.h>

using namespace std; /**************************************************************/ class Persona //clase padre o superclase { private: //atributos string nombre; //cadena int edad; //entero public: //metodos Persona(string,int); //constructor virtual void mostrar(); //virtual funcion de polimorfismo - muestra 2 valores };

Persona :: Persona (string _nombre, int _edad) { nombre = _nombre; edad = _edad; } void Persona :: mostrar() { cout << "nombre: "<< nombre << endl; cout << "edad: " << edad << endl; } /**********************************************************/ class Alumno : public Persona //herencia clase hija { private: float notaFinal; public: Alumno (string , int, float); void mostrar (); //cumpliendo el polimorfismo (igual nombre) muestra 3 }; Alumno :: Alumno (string _nombre, int _edad, float _notaFinal) : Persona (_nombre, _edad) { notaFinal = _notaFinal; } void Alumno :: mostrar () // = al de persona { Persona :: mostrar(); //llamamos al metodo mostrar de la classe persona (herencia) cout << "nota final: "<<notaFinal <<endl; }

class Profesor : public Persona { private: string materia; public: Profesor(string,int,string); void mostrar();

Profesor :: Profesor (string _nombre, int _edad , string _materia ) : Persona (_nombre,_edad) // { materia = _materia; }

void Profesor :: mostrar () { Persona :: mostrar(); // en la classe persona llamar mostrar cout << "materia : "<< materia<<endl; //indicar de que clase llamar (tiene que tener virtual para trabajar con el polimorfismo solo en la clase padre) }

int main () { Persona per1 = Persona("ronal",10); per1.mostrar();

Profesor pro1 = Profesor("raul",123,"algebra");

/*Persona *vector [3];

vector[0]= new Alumno ("yon",19,18.1); //crear un alumno ---- alumno tmb es persona vector[0]->mostrar(); cout <<endl; cout <<"clase profesor "<<endl; cout <<endl; vector[1] = new Profesor("Ron",32,"fundamentos"); vector[1]->mostrar(); vector[2] = new Persona("persona",10); vector[2]->mostrar(); */ return 0; } //es un metodo q actuara de diferente manera de acurdo a la clase q pertenezca

polimorfismo es la cualdidad que tienen los objetos para actuar de diferente manera ante el mismo mensaje ejemplo correr: humano perro, raton a los 3 hacen la misma accion pero de diferente manera