martes, 15 de noviembre de 2016

Programa ejemplo de Herencia Multiple C++

// Programa ejemplo de Herencia Multiple

#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>

class vehiculo_rodante
{
 int ruedas;
 int pasajeros;
 public:
 void pon_ruedas(int num);
 int obten_ruedas(void);
 void pon_pasajeros(int pas);
 int obten_pasajeros(void);
};
void vehiculo_rodante::pon_ruedas(
int num)
{ ruedas = num; }
int vehiculo_rodante::obten_
ruedas(void)
{ return ruedas; }
void vehiculo_rodante::pon_
pasajeros(int pas)
{ pasajeros = pas; }
int vehiculo_rodante::obten_
pasajeros(void)
{ return pasajeros; }

// Declaramos camioneta como una clase derivada de la
// Clase vehiculo_rodante;

class camioneta
{
 int carga;
 public:
 void pon_carga(int tam);
 int obten_carga(void);
 void muestra(void);
};

// Declaramos otra Clase hija de vehiculo_rodante
// la Clase automovil
enum autos{carro, van, vagoneta};

class automovil
{
  enum autos tipo;
  public:
 void pon_tipo(enum autos t);
 enum autos obten_tipo(void);
 void ensena(void);
};

// definicion de las funiones miembro de la clase
// Camioneta

void camioneta::pon_carga (int c)
{ carga =c ; }

int camioneta::obten_carga (void)
{ return carga; }

void camioneta::muestra(void)
{
//cout
//cout
cout
};

// definiciones de las funciones miembros de la
// Clase automovil

void automovil::pon_tipo(enum autos t)
{ tipo=t;}

enum autos automovil::obten_tipo (void)
{ return tipo; }

void automovil::ensena(void)
{
// cout
// cout
 cout
 switch(obten_tipo())
     {
      case van: cout
  break;
      case carro: cout
    break;
      case vagoneta: cout
     }
}

class moto:public vehiculo_rodante, public camioneta, public automovil
{
char marca[30];
public :
 void pon_marca(char m[30]) {strcpy(marca,m);}
 void muestra_marca(void);
};

void moto::muestra_marca(void)
{
cout
cout
}

int main(void)
{
// creamos dos camionetas y un aotomovil
 camioneta c1,c2;
 automovil a;
 moto x;
 //clrscr();
 // Caracterizamos la primer camioneta
//c1.pon_ruedas(18);
//c1.pon_pasajeros(2);
c1.pon_carga(1500);
// Caracterizamos la segunda camioneta
//c2.pon_ruedas(6);
//c2.pon_pasajeros(3);
c2.pon_carga(800);
// Caracterizamos el automovil
//a.pon_ruedas(4);
//a.pon_pasajeros(6);
a.pon_tipo(van);
// mostramos las camionetas
c1.muestra();
c2.muestra();
// mostramos el automovil
a.ensena();
x.pon_marca("carabela");
x.pon_carga(100);
x.pon_tipo(carro);
x.muestra_marca();
getchar();
return 0;
}


el sd pex:




#include <iostream>
using namespace std;

class pex
{
int x,y;
public:
pex(int a,int b){x=a;yb;};
void modifica(int a,int b){xa,y=b;};
void suma(pex x, y)
void resta(pex x,pex y);
void producto(pex x,pex y);
void show(){cout
void change(int x,int y);
};

void pex::suma(pex uno, pex dos)
{
x=uno.x+dos.x;
y=uno.y+dos.y;
}

void pex::resta(pex uno, pex dos)
{
x=uno.x-dos.x;
y=uno.y-dos.y;
}

void pex::producto(pex uno, pex dos)
{
x=uno.x*dos.x;
y=uno.y*dos.y;
}
int main()
{
int opc,x,y;
pex uno(0,0),dos(0,0),tres(0,0);
cout
do{
    cout
    cout
    cout
    cout
    cout
    cout
    cout
    cin>>opc;
     switch(opc)
      {
       case 1:
            cout
            cout
            cin>>x;
            cout
            cin>>y;
            uno.modifica(x,y);
            break;          
       case 2:
            cout
            cout
            cin>>x;
            cout
            cin>>y;
            dos.modifica(x,y);
            break;
       case 3:
            cout
            tres.suma(uno,dos);
            tres.show();
            break;
       case 4:
            cout
            tres.resta(uno,dos);
            tres.show();
             break;
       case 5:
            cout
            tres.producto(uno,dos);
            tres.show();
            break;
       case 6:
            cout
             cout
            uno.show();
            cout
            dos.show();
            cout
            tres.show();
            break; 
       case 7:
            cout
            cout
            break; 
       default:
               cout


      }

  }while(opc!=7);
 getchar();
  getchar(); 
  return 0; 
}

No hay comentarios:

Publicar un comentario