魏书生六步教学法感想:C语言问题

来源:百度文库 编辑:神马品牌网 时间:2024/04/30 15:32:53
程序:有4个圆塔,圆心分别是(2,2),(-2,2),(-2,-2),(2,-2),圆半径为1.这4个塔高度为10m,塔以外无建筑.今输入任一点的坐标,求该点的建塔高度(塔外的高度为0)

****************************
请帮帮忙做一下,里面的数学公式我忘了,希望在程序
主要地方加上注释,谢谢.
这里面的数学公式我不懂呀,请教一下。怎么算X,Y是否落在圆上,如果数据不一致,要一个一个的求象限怎么求呀。不好意思我是自学的,数学十年前学过,谢谢啦。

#include <math.h>
#include <stdio.h>

main()
{
double x,y;
double absx,absy;
scanf("%lf,%lf",&x,&y);
absx=fabs(x)-2;
absy=fabs(y)-2;
if((absx*absx+absy*absy)<=1)
{
printf("High=10");
}
else
{
printf("High=0");
}
getch();
}
TC2下编译成功,注意四个点是对称的,所以也就省去每个象限都去求解的麻烦,恰好半径是1,开平方的事情也省了,不要什么都交给电脑去做,虽然它算的很快,但积少成多

同学,老师留的作业要自己做,独立思考解决问题

是很好的学习方法,我把思路告诉你:

输入一点的坐标,判断它在哪个象限,然后用数学公式

求出该点与所在象限圆心的距离,看距离是否大于半径

求根用SQRT函数