现在有一个圆柱形水杯,里面装满了水,在它的底部有一个小洞,通过一些简单的物理知识我们可以知道:
1、 由于重力的原因,水一定会从小洞流出来。
2、 小洞漏水的速度是和小洞那个位置的水所受到的压力大小成正比的。进而,我们可以知道,漏水的速度V和水面的的高度h成正比,简单起见,我们就直接让v=h吧(只是数值上的相等,v我们认为是单位时间漏出的水的体积,与小孔的大小无关,物理好的童鞋就不要深究了^_^)。
3、 如果你非常喜欢一个人,理论上在水漏完之前你一定不再喜欢TA了。
好吧,扯远了,我们现在的问题是,如果原来倒入了高度为h的水,从水开始流出时计为0时刻,如果在某个时间t,你不再只关心你喜欢的那个TA了,看了下水杯水面高度还有h1,那么你能计算出这个杯子的底面积s吗?
-
输入
- 第一行一个数n,表示测试数据组数。
接下来有n行数,每行数有三个数,分别表示最初倒入水面的高度h,时间t,t时刻的水面高度(所有物理量均按照国际单位制给出,且不含单位)。 -
输出
- 每组测试数据给出相应的水杯的底面积,四舍五入保留小数点后面一位数字即可,每组输出占一行。
-
样例输入
-
2
10 10 5
1 3 0.5
-
样例输出
-
14.4
4.3
-
来源
原创
#include<stdio.h>
#include<math.h>
int main(){
int n;
double h,t,h1;
scanf("%d",&n);
while(n--){
scanf("%lf%lf%lf",&h,&t,&h1);
//s1=t/(exp(1-h1/h)-1);
printf("%.1lf\n",t/(log(h/h1)));
}
return 0;
}
//v*t=h*t=∫dh *s [H,到h1上的几分] 该好好看看数学了!!!!!!!!!!!