有4个圆塔,圆心别离为(2,2)、(-2,2)、(-2,-2)、(2,-2),圆半径为1,这4个塔的高度为10cm,塔外无缔造物。今输入任小数的坐标,C讲话编程求该点的缔造高度(塔外的高度为0)。
解析:此题说白了即是判断这点到各个圆心的距离,要是大于1的话阐发在塔内,这是高度为10cm,不然就为0,要津是求点到各个圆心的距离。
三上悠亚在线源代码演示:
#include<stdio.h>//头文献
int main()//主函数
{
int height=10; //界说灯塔高度
float x1=2,x2=-2,x3=-2,x4=2,y1=2,y2=2,y3=-2,y4=-2;//界说坐标
张开剩余65%float x,y,d1,d2,d3,d4;//界说坐标
printf("请输入一个点坐标(x,y):");//领导语句
scanf("%f,%f",&x,&y);//键盘输入坐标
d1=(x-x4)*(x-x4)+(y-y4)*(y-y4);//求该点到各中心点距离
d2=(x-x1)*(x-x1)+(y-y1)*(y-y1);//求该点到各中心点距离
d3=(x-x2)*(x-x2)+(y-y2)*(y-y2);//求该点到各中心点距离
d4=(x-x3)*(x-x3)+(y-y3)*(y-y3);//求该点到各中心点距离
if(d1>1&&d2>1&&d3>1&&d4>1)//判断该点是否在塔外
{
height=0;
}
printf("该点的高度为%d\n",height);
return 0;//主函数复返值为0
}
编译开动恶果如下:
请输入一个点坐标(x,y):2,2
该点的高度为10
--------------------------------
Process exited after 25.06 seconds with return value 0
请按纵情键陆续. . .白丝 足交
当该点在塔外时:
请输入一个点坐标(x,y):2,9
该点的高度为0
--------------------------------
Process exited after 3.255 seconds with return value 0
请按纵情键陆续. . .
发布于:四川省