),L1 中垂线方程为 A1x+B1y=C1;则它的中垂线方程中 A1=-B=x2-x1,РB1=A=y2-y1,C1=-B*midx+A*midy=((x2*x2-x1*x1)+(y2*y2-y1*y1))/2; Р 同理可以知道过(x1,y1),(x3,y3)的直线的中垂线的方程。于是这两条中垂线的交点就Р是圆心。Р (3)求两条直线交点Р 设两条直线为 A1x+B1y=C1 和 A2x+B2y=C2。Р 设一个变量 det=A1*B2-A2*B1; Р 如果 det=0,说明两直线平行;若不等于 0,则求交点:x=(B2*C1 -B1*C2)/det,Рy=(A1*C2-A2*C1)/det; Р【更上一层楼】Р 继续了解随机增量式算法求解最小包围圆的问题,并将之推广到多维空间中计算任何Р给定点集的最小包围球,最小包围椭圆、最小包围椭圆球。了解最小包围圆在实际生活中的Р应用。Р Р 8Р第 3 题特殊数据的输出Р【涉及知识点】Р 1. 函数的参数; Р 2. 多分支条件语句; Р 3. 循环; Р 4. 数据的输入输出; Р 5. 随机函数的使用。Р【题目介绍】Р 请编写程序,由系统随机产生一个正整数 n(1<n<50000),根据菜单提示,选择输出小Р于 n 的以下 7 种特殊数据中的一种:(1)完全数,(2)亲密数,(3)水仙花数,(4)阶乘和Р数,(5)自守数,(6)孪生素数;直到用户退出系统。Р【功能要求】Р 1. 采用 1 行输出 5 个数据的格式。Р 2. 主函数实现正整数 n 的随机产生和菜单的显示,如图 3.1 所示。数据 n 作为函数的Р 实参传递给各个子函数。Р 3. 子函数实现 1 到 n 之间的特殊数据的判断和输出,不同类型特殊数据的判断用不同Р 子函数实现。Р Р 图 3.1 菜单显示Р【难点与提示】Р 1. 各类特殊数据的解释如下: Р 9