飞花的鱼塘

来源:互联网 发布:js让点击事件失效 编辑:程序博客网 时间:2024/04/27 22:39

飞花的鱼塘

Time Limit: 1000MS Memory limit: 65536K

题目描述

 一日,飞花壕在稷下湖游玩,忽然,飞花巨有了一个养鱼的想法,于是,他大手一挥,“这片鱼塘被我承包了”。

 

如图,鱼塘的形状为两部分(红色线条与蓝色线条所围成的部分),上半部分为开口向下的抛物线,对称轴为Y轴,抛物线与X轴的交点为ABAB关于Y轴对称)。下半部分为一个以线段AB为直径,以原点为圆心的一个半圆。

 

飞花壕买承包了这块鱼塘,可是他不知道鱼塘的面积有多大,你能帮他么?

输入

 多组输入。对于每组输入,有两行,第一行为两个浮点数,为P点的坐标PxPy

第二行有2个浮点数,为B点的坐标,BxBy。(所有坐标的取值均小于1000)。

保证输入数据合法。

输出

 

输出鱼塘的面积。结果保留两位小数。

示例输入

0.0 4.53.0 0.00.0 10.05.0 0.0

示例输出

32.14105.94

提示

  只是一个纯数学题,没什么好讲的
#include <stdio.h>
#include <math.h>
#include <string.h>
#include <algorithm>
#define inf 3.141592654
using namespace std;
int main()
{
    double n,m,x,y;
    double sum;
    while(~scanf("%lf %lf",&n,&m))
    {
           scanf("%lf %lf",&x,&y);
            double e =0,w = 0,q = 0;
            e = -m/x/x;
            w = e*pow(x,3.0)/3+m*(x)-e*pow(-x,3.0)/3.0-m*(-x);
            q = inf*x*x/2.0;
            sum = w+q;
            printf("%.2lf\n",sum);
    }
}
代码菜鸟,如有错误,请多包涵~!!
0 0
原创粉丝点击