填空题
阅读以下说明和Java程序,填充程序中的空缺,将解答填入对应栏内。
[说明]
下面的程序用来计算并寻找平面坐标系中给定点中最近的点对(若存在多对,则输出其中的一对即可)。程序运行时,先输入点的个数和一组互异的点的坐标,通过计算每对点之间的距离,从而确定出距离最近的点对。例如,在图所示的8个点中,点(1,1)与(2,0.5)是间距最近的点对。
【正确答案】
1、**unknown, 2、**unknown, 3、**unknown, 4、**unknown, 5、**unknown
【答案解析】shortestDistance>tmpDistance
本题考查考生使用JAVA语言进行面向对象程序设计的能力。首先要理解清楚题目中有关最近点对的概念和计算方法,然后阅读程序以实现该功能。
第一空处显示创建保存点坐标的数组。这里的new运算符用于开辟数组空间,其语法规则为:new 类型[初值]。第一空处需要填入一类型修饰符,因此应填入GPoint。类似的思路,第二空处考查Java语言中用new初始化数组,应填入new GPoint[]。
根据程序段中的注释,第三空和第四空处实现计算每一对点之间的距离。第三空处为循环控制变量,因为要计算所有对点间的距离,因此应填入。第四空应调用computeDistance类的distance函数计算每一对点points[i]和points[j]之间的距离,因此应填入getDistance(points[i],points[j])。
第五空处应填入一个判断条件,以输出距离最小的点对。这可通过比较shortestDistance和tmpDistance来实现。因此,第五空处应填入shortestDistance>tmpDistance。