已知三角形的三边分别是a、b、c,
先算出周长的一半s=1/2(a+b+c)
则该三角形面积S=根号[s(s-a)(s-b)(s-c)]

这个公式叫海伦——秦九昭公式

证明:
设三角形的三边a、b、c的对角分别为A、B、C,
则根据余弦定理c²=a²+b²-2ab·cosC,得

cosC = (a²+b²-c²)/2ab

S=1/2*ab*sinC
=1/2*ab*√(1-cos²C)
=1/2*ab*√[1-(a²+b²-c²)²/4a²b²]
=1/4*√[4a²b²-(a²+b²-c²)²]
=1/4*√[(2ab+a²+b²-c²)(2ab-a²-b²+c²)]
=1/4*√{[(a+b)²-c²][c²-(a-b)²]}
=1/4*√[(a+b+c)(a+b-c)(a-b+c)(-a+b+c)]

设s=(a+b+c)/2
则s=(a+b+c), s-a=(-a+b+c)/2, s-b=(a-b+c)/2, s-c=(a+b-c)/2,

上式=√[(a+b+c)(a+b-c)(a-b+c)(-a+b+c)/16]
=√[s(s-a)(s-b)(s-c)]

所以,三角形ABC面积S=√[s(s-a)(s-b)(s-c)]

#include <iostream>
#include<math.h>
#include<iomanip>
using namespace std;
float square(float x1,float y1,float x2,float y2,float x3,float y3)
{
    float a,b,c,s,ss;
    a=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
    b=sqrt((x1-x3)*(x1-x3)+(y1-y3)*(y1-y3));
    c=sqrt((x3-x2)*(x3-x2)+(y3-y2)*(y3-y2));
    s=(a+b+c)/2;
    ss=sqrt(s*(s-a)*(s-b)*(s-c));
    return ss;
}
int main()
{
 float a,b,c,d,e,f,ss;
 cin>>a>>b>>c>>d>>e>>f;
 ss=square(a,b,c,d,e,f);
 cout<<fixed<<setprecision(2)<<ss<<endl;
    return 0;
}

在c++中求2^6可以用#include<cmath>库文件,中的pow函数。函数原型是double pow(double base,double exp)。

#include <iostream>
#include<math.h>
#include<iomanip>
using namespace std;

int main()
{
int n;
cin>>n;
int result=pow(2,n);
cout<<result<<endl;
    return 0;
}

openjudge(三)的更多相关文章

  1. [OpenJudge 3066]随机序列

    [OpenJudge 3066]随机序列 试题描述 Bob喜欢按照如下规则生成随机数: 第一步:令a[0] = S, 当n = 0: 第二步:a[n+1] = (a[n]*A+B)%P: 第三步:如果 ...

  2. [OpenJudge 3064]坠落的蚂蚁

    [OpenJudge 3064]坠落的蚂蚁 试题描述 一根长度为1米的木棒上有若干只蚂蚁在爬动.它们的速度为每秒一厘米或静止不动,方向只有两种,向左或者向右.如果两只蚂蚁碰头,则它们立即交换速度并继续 ...

  3. [OpenJudge 3063]罪犯问题

    [OpenJudge 3063]罪犯问题 试题描述 一天,警官抓获了N个嫌犯,审问N个罪犯的途中,作为警长助手的你突然发现其中被确定为罪犯的K号人是你曾经出生入死的兄弟,你不能眼睁睁看着他被抓进牢里. ...

  4. OpenJudge计算概论-比饭量【枚举法、信息数字化】

    /*====================================================================== 比饭量 总时间限制: 1000ms 内存限制: 655 ...

  5. Poj OpenJudge 百练 1062 昂贵的聘礼

    1.Link: http://poj.org/problem?id=1062 http://bailian.openjudge.cn/practice/1062/ 2.Content: 昂贵的聘礼 T ...

  6. OpenJudge/Poj 1661 帮助 Jimmy

    1.链接地址: bailian.openjudge.cn/practice/1661 http://poj.org/problem?id=1661 2.题目: 总Time Limit: 1000ms ...

  7. OpenJudge/Poj 1191 棋盘分割

    1.链接地址: http://bailian.openjudge.cn/practice/1191/ http://poj.org/problem?id=1191 2.题目: 总时间限制: 1000m ...

  8. OpenJudge 2803 碎纸机 / Poj 1416 Shredding Company

    1.链接地址: http://poj.org/problem?id=1416 http://bailian.openjudge.cn/practice/2803 2.题目: 总时间限制: 1000ms ...

  9. Poj 1054 The Troublesome Frog / OpenJudge 2812 恼人的青蛙

    1.链接地址: http://poj.org/problem?id=1054 http://bailian.openjudge.cn/practice/2812 2.题目: 总时间限制: 10000m ...

随机推荐

  1. Error: Dynamic is undefined

    1.错误描述 Error: Dynamic is undefined @http://localhost:8080/Query/resource/global/scripts/app.js:149:1 ...

  2. (二十三)mongodb中group的问题

    今天的工作中我需要从mongodb数据库中查出一定的数据,并排序后返回给前台,数据库表中包含了ruleID,processingID,userID,updateTime等字段.    同一个ruleI ...

  3. 【原】Java学习笔记026 - 集合

    package cn.temptation; public class Sample01 { public static void main(String[] args) { // 需求:从三国演义中 ...

  4. boost asio allocation

    allocation演示了自定义异步操作的内存分配策略,因为asio在执行异步IO操作时会使用系统函数来动态分配内存,使用完后便立即释放掉:在IO操作密集的应用中,这种内存动态分配策略会较大地影响程序 ...

  5. POJ 2104 K-th Number 主席树

    #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> us ...

  6. MySQL入门笔记(二)

    MySQL的数据类型.数据库操作.针对单表的操作以及简单的记录操作可参考:MySQL入门笔记(一) 五.子查询   子查询可简单地理解为查询中的查询,即子查询外部必然还有一层查询,并且这里的查询并非仅 ...

  7. C#多线程编程(4)--异常处理+前三篇的总结

    本来是打算讲并行For和PLINQ的,但是我感觉前三篇我没有讲得很清晰.之前一直在看<CLR via C#>(后文简称CLR)的多线程部分,其中有些部分不是很明白,今天翻开<果壳中的 ...

  8. [BZOJ3680][JSOI2004]平衡点 / 吊打XXX

    BZOJ Luogu (洛谷和BZOJ上的数据范围不同,可能需要稍微调一调参数) sol 这题的参数调得我心累 模拟退火的模型可以形象地理解为:不断降温的小球在一个凹凸不平的平面上反复横跳,根据万有引 ...

  9. FFT/NTT 总结

    本总结主要用于帮助个人理解,讲得不足之处,还请各位看官谅解 FFT 补充知识 \(n\)次单位复根(\(w_n\)): 使得\(z^n=1\)的一类复数,这些复数一共有\(n\)个,它们都分布在复平面 ...

  10. 禁被ping 软件漏洞升级

    禁被ping:echo “net.ipv4.icmp_echo_ignore_all=1”  /etc/sysctl.conf 软件漏洞升级:yum install openssh bash -y