NOWCODER考研机试专题

9. 球的半径和体积

2019-01-01  本文已影响0人  IceFrozen
题目描述

输入球的中心点和球上某一点的坐标,计算球的半径和体积

输入描述:

球的中心点和球上某一点的坐标,以如下形式输入:x0 y0 z0 x1 y1 z1

输出描述:

输入可能有多组,对于每组输入,输出球的半径和体积,并且结果保留三位小数
为避免精度问题,PI值请使用arccos(-1)。

示例1

输入

0 0 0 1 1 1 

输出

1.732 21.766
解法
#include<stdio.h>
#include<math.h>

int main(){
    int x0, y0, z0, x1, y1, z1;
    double PI = acos(-1);    //π
    double r, v;    //半径和体积 
    while(scanf("%d%d%d%d%d%d", &x0, &y0, &z0, &x1, &y1, &z1) != EOF){
        double r2 = (x1 - x0)*(x1 - x0) + (y1 - y0)*(y1 - y0) + (z1 - z0)*(z1 - z0);    //半径的平方 
        r = sqrt(r2);    //半径公式 
        v = (4.0 / 3) * PI * r2 * r;    //体积公式,这里要注意 4.0 / 3,这样系统才会把结果记为浮点数 
        printf("%.3f %.3f\n", r, v);
    }
    return 0;
}
上一篇下一篇

猜你喜欢

热点阅读