TrianguloFuncionesAmigas

Páginas: 6 (1304 palabras) Publicado: 27 de julio de 2015
// TrianguloFuncionesAmigas
/* Proyecto que realiza la lectura, escritura de tres puntos de un triangulo
y calcula las distancias entre ellos mediante una funcion amiga, finalemnte
calcula y despliega el perimetro y superficie */
#include "CPunto.h"

using namespace std;

int main()
{
// Definicion de variables:
CPunto A, B, C;
cout << "Calculo de areas de triangulos" << endl;A.lectura("A");
B.lectura("B");
C.lectura("C");
A.escritura("A");
B.escritura("B");
C.escritura("C");
double a = distancia(C, B);
double b = distancia(A, C);
double c = distancia(A, B);
cout << "Valores de los lados: a = " << a << endl;
cout << "b = " << b << endl;
cout << "c = " << c << endl;
double per = a + b + c, s, sup;
s = per / 2;sup = sqrt(s * (s - a) * (s - b) * (s - c));
cout << "Perimetro = " << per << ", Superficie = " << sup << endl;
return 0;
}


Ejercicio de Datos persona
#ifndef PERSONA_H
#define PERSONA_H
#include

typedef enum {porCedula, porNombre, porEdad, porNota} opcion;

class Persona
{
public:
Persona();
virtual ~Persona();
void lectura();
voidescritura();
Fecha getFecNac() {return FechaNacimiento; }
char *getCedula() {return cedula; }
int compara(Persona &, opcion);
int ascendente(Persona &, opcion);
int descendente(Persona &, opcion);

static int NumPer;
static float promedio;
protected:
private:
char cedula[11];
char nombre[40];
Fecha FechaNacimiento;
floatnota;
};
typedef int (Persona::*orden)(Persona &, opcion);

#endif // PERSONA_H

…………………..
#include

char fecha[10];
Fecha::Fecha()
{
//ctor
}

Fecha::~Fecha()
{
//dtor
}

char* Fecha::getFecha()
{
sprintf(fecha, "%d/%02d/%02d", anio, mes, dia);
return fecha;
}

void Fecha::lectura()
{
cout << "Ingresar la fecha (dd/mm/aaaa): ";
cin >> dia;
cin >> mes;
cin >>anio;
}

……………..
#ifndef FECHA_H
#define FECHA_H
#include
using namespace std;
#include
#include
class Fecha
{
public:
Fecha();
virtual ~Fecha();
void lectura();
char *getFecha();
protected:
private:
int dia, mes, anio;
};

#endif // FECHA_H

:
:
:
:
Triangulo clase amiga
#include "Ctriangulo.h"


int main()
{Ctriangulo T;
T.lectura("T");
T.escritura("T");
return 0;
}
………………….
#include "CPunto.h"

CPunto::CPunto()
{
//ctor
}

CPunto::~CPunto()
{
//dtor
}

void CPunto::escritura(char *m)
{
cout << m << " = (" << x << ", " << y << ")" << endl;
}

void CPunto::lectura(char *m)
{
cout << "Ingresar las coordenadas de " << m << ": ";
cin >> x;
cin >> y;
}

……………..
#include"Ctriangulo.h"

Ctriangulo::Ctriangulo()
{
//ctor
}

Ctriangulo::~Ctriangulo()
{
//dtor
}
double Ctriangulo::getsuperficie()
{
double s=getperimetro()/2;
return sqrt(s * (s - a) * (s - b) * (s - c));
}

double Ctriangulo::getperimetro()
{
return a+b+c;
}

double Ctriangulo::getdistancia(CPunto a, CPunto b)
{
return sqrt(pow(a.x - b.x, 2) + pow(a.y - b.y, 2));
}

voidCtriangulo::escritura(char *m)
{
cout << "Calculo de perimetro y area del triangulo " < cout<<"ingrese los vertices :"< A.escritura("A");
B.escritura("B");
C.escritura("C");
a = getdistancia(C, B);
b = getdistancia(A, C);
c = getdistancia(A, B);
cout << "Valores de los lados:"< cout<< "a = " << a << endl;
cout << "b = " << b << endl;cout << "c = " << c << endl;
cout << "Perimetro = " << getperimetro() << endl;
cout<<" area = " << getsuperficie() << endl;
}

void Ctriangulo::lectura(char *m)
{
cout << "Calculo de perimetro y area del triangulo " < cout<<"ingrese los vertices :"< A.lectura("A");
B.lectura("B");
C.lectura("C");
}
.
:
:
:

// ComplejosSobrecargaOperadores
/*...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS