第六周实验之三角形

原创 2012年03月28日 22:19:36

/* (程序头部注释开始)

* 程序的版权和版本声明部分

* Copyright (c) 2011, 烟台大学计算机学院学生

* All rights reserved.

* 文件名称:                             

* 作    者:  李冠绩             

* 完成日期:   2012   年  3 月   28   日

* 版 本 号:          

* 对任务及求解方法的描述部分

* 输入描述:

* 问题描述:设计一个三角形类,能够输入三角形的三个顶点,求出其面积和周长,并判断是否为直角三角形和等腰三角形,

* 程序输出:

* 程序头部的注释结束

*/

#include<iostream>  

#include<cmath>  

using namespace std; 
class CPoint 

private: 
    double x;  // 横坐标  
 double y;  // 纵坐标  
public: 
 CPoint(double xx=0,double yy=0); 
 float getx(); 
 float gety(); 
}; 
class CTriangle 

public: 
 CTriangle(CPoint &X,CPoint &Y,CPoint &Z,int i=0):A(X),B(Y),C(Z),i(i){} //给出三点的构造函数  
 void setTriangle(CPoint &X,CPoint &Y,CPoint &Z); 
 float perimeter(void);//计算三角形的周长  
 float area(void);//计算并返回三角形的面积  
 void isRightTriangle(); //是否为直角三角形  
 void isIsoscelesTriangle(); //是否为等腰三角形  
 void Distance(CPoint &p,CPoint &q) ;   // 两点之间的距离(一点是当前点,另一点为参数p)  
private: 
 CPoint A,B,C; //三顶点  
    float bian[3]; 
 int i; 
 
}; 
void main() 

 CPoint c1(3,0),c2(1,0),c3(0,5); 
 CTriangle m(c1,c2,c3); 
 m.setTriangle(c1,c2,c3); 
 m.Distance(c1,c2); 
 m.Distance(c1,c3); 
    m.Distance(c2,c3); 
 cout<<"三角形的周长为:"<<m.perimeter()<<endl;//计算三角形的周长  
 cout<<"三角形的面积为:"<<m.area()<<endl;//计算并返回三角形的面积  
    m.isRightTriangle(); //是否为直角三角形  
 m.isIsoscelesTriangle(); //是否为等腰三角形  

float CPoint::getx() 

 return x; 

float CPoint::gety() 

 return y; 

CPoint::CPoint(double xx,double yy) 

 x=xx; 
 y=yy; 

void  CTriangle::Distance(CPoint &p,CPoint &q)  

 int m=0; 
 bian[m+i]=sqrt((p.getx()-q.getx())*(p.getx()-q.getx())+(p.gety()-q.gety())*(p.gety()-q.gety())); 
 ++i; 

//计算三角形的周长
float CTriangle::perimeter(void)  

    float s=0; 
    --i; 
 s=s+bian[i]+bian[i-1]+bian[i-2]; 
 return s; 

//计算并返回三角形的面积
float CTriangle::area(void)   
{  
 float s,m;   
 int i=0; 
 m=(bian[i]+bian[i+1]+bian[i+2])/2;         
 s=sqrt(m*(m-bian[i])*(m-bian[i+1])*(m-bian[i+2]));      
 return s;   

//是否为直角三角形
void CTriangle::isRightTriangle()     

 int i=0; 
 int m,n,c; 
 m=bian[i]; 
    n=bian[i+1]; 
 c=bian[i+2]; 
 if((m*m+n*n)==c*c||(m*m+c*c)==n*n||(c*c+n*n)==m*m) 
 { 
  cout<<"此三角形为直角三角形"<<endl; 
 } 
 else 
 { 
  cout<<"此三角形不是直角三角形"<<endl; 
    } 

//是否为等腰三角形 
void CTriangle::isIsoscelesTriangle() 

 float m,n,c; 
 int i=0; 
 m=bian[i]; 
 n=bian[i+1]; 
 c=bian[i+2]; 
 if(m==n||m==c||n==c) 
 { 
        cout<<"此三角形为等腰三角形"<<endl; 
 } 
    else 
 { 
  cout<<"此三角形不是等腰三角形"<<endl; 
    } 

void CTriangle::setTriangle(CPoint &X,CPoint &Y,CPoint &Z) 

    A=X; 
    B=Y; 
 C=Z; 
 
}

学会举一反三。

 

nefuoj 12 西游记之三角形

西游记之三角形 Problem:12 Time Limit:1000ms Memory Limit:65536K ...
  • The_star_is_at
  • The_star_is_at
  • 2016年11月22日 20:01
  • 250

Coursera—machine learning(Andrew Ng)第六周编程作业

linearRegCostFunction.m function [J, grad] = linearRegCostFunction(X, y, theta, lambda) %LINEARREGC...
  • ccblogger
  • ccblogger
  • 2017年11月24日 15:33
  • 372

Opengl学习程序之三角形

着色器: triangles.vert #version 430 core layout(location = 0) in vec4 vPosition; void main() { gl...
  • SHIYUEDYX
  • SHIYUEDYX
  • 2017年02月06日 11:19
  • 235

coursera机器学习课程第六周——课程笔记

本周的内容主要分为两部分,第一部分:主要内容是偏差、方差以及学习曲线相关的诊断方法,为改善机器学习算法的决策提供依据;第二部分:主要内容是机器学习算法的错误分析以及数值评估标准:准确率(交叉验证集的误...
  • ccblogger
  • ccblogger
  • 2017年11月27日 17:47
  • 168

动态规划之三角形

/* 数字三角形问题。 7 3 8 8 1 0 2 7 7 4 5 5 2 6 5 数字三角形中的数字为不超过100的正整数。现规定从最顶层走到最底层,每一步可沿左斜线向下或右斜线向下走。假设三角形...
  • u010056396
  • u010056396
  • 2014年12月09日 09:32
  • 658

函数模版之三角形

  • luoye1989
  • luoye1989
  • 2009年08月02日 18:06
  • 174

LintCode之三角形计数

给定一个整数数组,在该数组中,寻找三个数,分别代表三角形三条边的长度,问,可以寻找到多少组这样的三个数来组成三角形?样例 例如,给定数组 S = {3,4,6,7},返回 3其中我们可以找到的三个三...
  • JinKe_
  • JinKe_
  • 2017年08月02日 14:03
  • 186

第六周实验

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件...
  • SheSawHim
  • SheSawHim
  • 2012年03月28日 22:10
  • 339

coursera Machine Learning 第六周 测验quiz1答案解析 Advice for Applying Machine Learning

1.选择B 解析:通过看学习曲线,结合课上所讲就是高方差的表现。 2.选择BC 解析:题意是做图片分类,结果对测试集效果不好,但是能很好地符合训练集,如何才能改善算法。明显是过拟合的结果,即高方差...
  • sinat_39805237
  • sinat_39805237
  • 2017年12月12日 20:43
  • 124

NEFU OJ12 西游记之三角形

#include #include using namespace std; int a[466]; void getSanjiao() { a[2] = a[1] = a[0] = 1; fo...
  • ustcyue
  • ustcyue
  • 2016年09月12日 11:42
  • 114
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:第六周实验之三角形
举报原因:
原因补充:

(最多只允许输入30个字)