| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 899 人关注过本帖, 1 人收藏
标题:这个C程序的数学原理是什么?
只看楼主 加入收藏
YuriGagarin
Rank: 1
等 级:新手上路
帖 子:46
专家分:5
注 册:2008-2-22
结帖率:100%
收藏(1)
 问题点数:0 回复次数:5 
这个C程序的数学原理是什么?
有4个圆塔,圆心分别为(2,2)、(-2.2)、(-2,-2)、(2,-2),圆半径为1。这4个塔的高度为10m,塔以外无建筑物。今输入任一点的坐标,求该点的建筑高度(塔外的高度为零)。

  此题的程序倒是没有什么难度,但自己不清楚为什么要这么写,它的数学原理是什么?
  应该与直角坐标系有关吧!
  中学的很多东西都不记得了!!

#include <stdio.h>
void main()
{
int h=10;
float x1=2,y1=2,x2=-2,y2=2,x3=-2,y3=-2,x4=2,y4=-2,x,y,d1,d2,d3,d4;
printf("Please input a point(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)
  h=0;
printf("The point's h:%d\n",h);
}
搜索更多相关主题的帖子: 数学 原理 
2008-04-14 16:25
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
先学解析几何。。。。。。。

" border="0" />
2008-04-14 16:33
永夜的极光
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2721
专家分:1
注 册:2007-10-9
收藏
得分:0 
不用那么高深........

看程序的意思,就是判断该点的位置是不是在四个圆中的某个圆内(和圆心坐标距离小于1)
如果在圆内,高度为10,在圆外,高度为0

不过........有造的这么难看的塔吗?就是一根圆柱....

从BFS(Breadth First Study)到DFS(Depth First Study)
2008-04-14 17:59
心若止水
Rank: 1
等 级:新手上路
帖 子:89
专家分:0
注 册:2008-4-9
收藏
得分:0 
几何中平面上求两点间的距离。d=(x+ -x1)*(x+ -x2)+(y+ -y1)*(y+ -y2),根据点在第几象限用此公式既可求出。
2008-04-15 16:43
Orz
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-4-15
收藏
得分:0 
那四行可以合并为一行

" border="0" />

最值得BS的人是谁
2008-04-15 16:54
YuriGagarin
Rank: 1
等 级:新手上路
帖 子:46
专家分:5
注 册:2008-2-22
收藏
得分:0 
[bo]以下是引用 [un]心若止水[/un] 在 2008-4-15 16:43 的发言:[/bo]

几何中平面上求两点间的距离。d=(x+ -x1)*(x+ -x2)+(y+ -y1)*(y+ -y2),根据点在第几象限用此公式既可求出。


这个公式与程序中的式子有关系吗??
  这个是求两点的距离,程序中是求一点在直角坐标系中的位置,也可以说是否在坐标系圆内!

  看来,这方面自己是得好好补补了!!!
2008-04-15 21:19
快速回复:这个C程序的数学原理是什么?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027590 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved