Skip to content

Instantly share code, notes, and snippets.

@felialois
Created August 15, 2012 01:44
Show Gist options
  • Save felialois/3354680 to your computer and use it in GitHub Desktop.
Save felialois/3354680 to your computer and use it in GitHub Desktop.
Tarea #1 Estructuras de Datos
//
// main.cpp
// Tarea #1
//
// Created by Felipe Alfaro on 8/10/12.
// Copyright (c) 2012 Felipe Alfaro. All rights reserved.
//
#include <iostream>
/* Area de un triángulo: La fórmula que aparece abajo permite calcular el área de cualquier triángulo (no necesariamente rectángulo) dados sus tres puntos extremos p1= (x1,y1), p2= (x2,y2) y p3 = (x3,y3). Escriba un programa que lea (desde el teclado) las coordenadas de ocho puntos que (en secuencia) definen un octágono irregular pero convexo, y posteriormente imprima el área de dicho octágono. A(T) = | ((p1.x - p3.x) (p2.y - p3.y) - (p1.y - p3.y) (p2.x - p3.x))/2 */
double area(double p1x, double p1y, double p2x, double p2y, double p3x, double p3y){
double op;
op= abs( ((p1x - p3x)*(p2y - p3y))-((p1y - p3y)*(p2x - p3x)) )/2;
return op;
}
int main()
{
double p1x,p1y,p2x,p2y,p3x,p3y,p4x,p4y,p5x,p5y,p6x,p6y,p7x,p7y,p8x,p8y,area1, area2,area3, area4, area5, area6,total;
using namespace std;
cout <<"digite las 8 coordenadas \n";
cin >>p1x>>p1y>>p2x>>p2y>>p3x>>p3y>>p4x>>p4y>>p5x>>p5y>>p6x>>p6y>>p7x>>p7y>>p8x>>p8y;
area1=area(p1x,p1y,p2x,p2y,p3x,p3y);
area2=area(p1x,p1y,p7x,p7y,p8x,p8y);
area3=area(p5x,p5y,p6x,p6y,p7x,p7y);
area4=area(p3x,p3y,p4x,p4y,p5x,p5y);
area5=area(p1x,p1y,p3x,p3y,p7x,p7y);
area6=area(p3x,p3y,p5x,p5y,p7x,p7y);
total=area1+area2+area3+area4+area5+area6;
cout <<"el area total es: ";
cout <<total;
cout <<"\n";
return EXIT_SUCCESS;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment