0% encontró este documento útil (0 votos)
5 vistas2 páginas

Clases y Operaciones en C++: Matrices, Fracciones y Puntos

El documento presenta la definición de varias clases como matriz, punto y fracción. También incluye clases derivadas como Segunda y Tercera que heredan atributos y métodos de clases base como Primera.

Cargado por

Aliens Guasaruco
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
5 vistas2 páginas

Clases y Operaciones en C++: Matrices, Fracciones y Puntos

El documento presenta la definición de varias clases como matriz, punto y fracción. También incluye clases derivadas como Segunda y Tercera que heredan atributos y métodos de clases base como Primera.

Cargado por

Aliens Guasaruco
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd

#include<iostream> } // Segunda, ya que el acceso es public

using namespace std; public:


fraccion(){ punto operator +(const punto &p) { class Segunda: public Primera {
class matriz numer=0; punto A; int k;
{ denomi=0; A.x= x + p.x;
A.y= y + p.y; public:
public: } return A; segunda()
int x,y,z,w; } {
void asigna(int a, int b){ k=0;
matriz(){ numer=a; punto operator -(const punto &p) { }
x=0; denomi=b; punto A; void Entra_k(int a)
y=0; } A.x= x - p.x; {
z=0; void mostrar(){ A.y= y - p.y; k=a;
w=0; cout<<" "<<numer<<"/"<<denomi<<"\n"; return A; }
} }
} void Muestra_k (void)
~punto(){} {
void asigna_matriz(int a,int b,int c,int d){ fraccion operator + (const fraccion & w) cout << "\n" << k;
x=a; { }; }
y=b; fraccion j;
z=c; [Link]=([Link]*numer)+(denomi*[Link]); };
w=d; [Link]=denomi*[Link]; CLASE PRIMERA
return j;
} } CLASE TERCERA
#include<iostream>
matriz operator + (const matriz & p) fraccion operator - (const fraccion & w) using namespace std;
{ { #include<iostream>
matriz j; fraccion j; // Se define una clase sencilla using namespace std;
j.x=x+p.x; [Link]=([Link]*numer)-(denomi*[Link]); class Primera {
j.y=y+p.y; [Link]=denomi*[Link]; // noten que estos atributos estan protegidos (i,j) // Se tiene otra clase, Tercera, que es derivada de la clase
j.z=z+p.z; return j; protected: Segunda
j.w=w+p.w; } int i, j; // Las variables i, j de Primera pasan a ser miembros
protected de
return j; ~fraccion(){}; // Tercera, ya que el acceso es public. Sin embargo no
} // noten que estos metodos son publicos. tiene acceso a k de
public: // Segunda, ya que esta variable es private.
matriz operator - (const matriz & p) friend ostream& operator <<(ostream &salida, Primera()
{ const fraccion&fra) { class Tercera: public Segunda {
matriz j; { i=0; public:
j.x=x-p.x; salida<<"La fraccion es: j=0; void f (void) { i=j=2;}
j.y=y-p.y; "<<[Link]<<"/"<<[Link]<<"\n"; } };
j.z=z-p.z; return salida; // parametrizada
j.w=w-p.w; } Primera(int a, int b)
{ EJECUTOR .CPP
return j; }; i=a;
} j=b;
} #include<iostream>
#include<iostream> using namespace std;
friend ostream& operator <<(ostream &salida, #include<string> //estoy seguro que esto lo hemos visto con el nombre de
const matriz&fra) #include<cmath> asigna
void Entra_ij(int a, int b) int main() {
{ using namespace std; Primera P(1,2);
salida<<"["<<fra.x<<" {
i=a; Segunda S;
"<<fra.y<<"]\n"; class punto{ Tercera T;
salida<<"["<<fra.z<<" "<<fra.w<<"]\n"; public: j=b;
} S.Entra_ij(3,4);
return salida; int x,y,z; S.Entra_k(5);
} //estoy seguro que esto lo hemos visto con el nombre de
imprime P.Muestra_ij(); // Saca 1 2
punto(){ S.Muestra_ij(); // Saca 3 4
x=0; void Muestra_ij ( )
{ S.Muestra_k(); // Saca 5
void imprime(){ y=0; T.f(); // Saca 2 2
cout<<"["<<x<<" "<<y<<"]\n"; z=0; cout << "\n" << i << " " << j;
} T.Muestra_ij();
cout<<"["<<z<<" "<<w<<"]\n"; } T.Entra_k(3);
} void asigna_puntos (int x1=0,int y1=0){ T.Muestra_k();
x=x1; };
}
~matriz(){} y=y1; S.Muestra_k();
}; } T.Entra_ij(5,6);
float calcula(int X1,int Y1,int X2,int Y2){ CLASE SEGUNDA T.Muestra_ij();
P.Muestra_ij();
FRACCION CLASE z=sqrt((X1-X2)*(X1-X2)+(Y1-Y2)*(Y1-Y2)); #include<iostream> return 0;
using namespace std; }
return z;
#include<iostream> }
using namespace std; // Se tiene otra clase, Segunda, que es derivada de la clase
void imprime(){ Primera
cout<<"el valor de x: "<<x; PUNTO H
class fraccion { // Las variables i, j de Primera pasan a ser miembros
cout<<"\nel valor de y: "<<y<<"\n"; protected de
int numer, denomi;
# include <iostream> } carro(){ color=col;

# include<math.h> }; marca=" "; }

using namespace std; cyl=0; void imprime_moto(){

class puntos{ [Link] color=""; cout<<" Marca: "<<marca<<" Marca: "<<color;

public: # include <iostream> } }

int x1,x2,y1,y2; # include "[Link]" };

public: int main(){ void asigna_carro(float cil, string mar, string col) CARRO [Link]

puntos (){ puntos h; { #include<iostream>

x1=0; int a1,b1,c1,d1; marca=mar; #include"[Link]"

x2=0; float f; cyl=cil; #include"[Link]"

y1=0; cout<<"intro los puntos: "; color=col; using namespace std;

y2=0; cin>>a1; } int main (){

} cin>>b1; void imprime_carro(){ carro p;

void asigna_punto (int a,int b, int c,int d){ cin>>c1; cout<<" Marca: "<<marca<<" Cilindros: "<<cyl<<" Marca: moto q;
"<<color;
x1=a; cin>>d1; string colour,marque;
}
y1=b; h.asigna_punto(a1,b1,c1,d1); float cl;
};
x2=c; [Link](); cout<<"\n Intro color:";
CLASE MOTO
y2=d; f=[Link](a1,b1,c1,d1); cin>>colour;
#include<iostream>
} cout<<"\nla distancia es: "<<f<<"\n"; cout<<"\n Intro marca:";
#include<string>
void imprimep(){ cout<<h; cin>>marque;
using namespace std;
cout<<"("<<x1<<","<<y1<<")"; return 0; cout<<"\n Intro cyl:";
class moto: public carro {
cout<<"("<<x2<<","<<y2<<")"; } cin>>cl;
public:
} HERENCIA CARRO p.asigna_carro(cl,marque,colour);
string marca,color;
float distan(int j,int q, int l,int k){ #include<iostream> q.asigna_carro(cl,marque,colour);//notese que Q es del tipo
public: moto
float d; #include<string>
moto(){ return 0;
d=sqrt ((l-j)+(k-q)); using namespace std;
marca=" "; }
return (d);
color="";
} class carro {
}
friend ostream & operator << ( ostream & salida, puntos & public:
a){ void asigna_moto(string mar, string col)
float cyl;
salida<<"("<<a.x1<<","<<a.y1<<")"; {
string marca,color;
salida<<"("<<a.x2<<","<<a.y2<<")"; marca=mar;
public:

También podría gustarte