PHP算法练习十:计算圆的半径和中心坐标
时间:2021-08-26
来源:互联网
标签:
今天PHP爱好者给大家带来PHP算法怎么计算圆的半径和中心坐标的方法,在上一篇《PHP算法练习九:将全部偶数转到全部奇数之前》中给大家介绍怎么通过PHP将全部偶数转到全部奇数之前,那么今天将继续给大家带来PHP算法练习系列~希望对大家有所帮助。
本文将给大家介绍怎么通过PHP计算圆的半径和中心坐标~
具体问题描述则是“如何编写一个 PHP 程序来计算由平面上三个给定点构成的圆的半径和中心坐标 (x, y)”?
该问题就相当于一个数学题了,已知三点,确定一个圆的半径和中心坐标。
看下图:
给大家提供几个公式:
设圆的公式如:
将圆方程化为标准方程:
将上述系数代入即可解得圆心(x,y)和半径R:
PHP实现代码如下:
<?php
$x1 = 0; $y1 = 0; $x2 = 2; $y2 = 0; $x3 = 2; $y3 = 2;
$a1 = 2 * ($x2 - $x1);
$b1 = 2 * ($y2 - $y1);
$c1 = $x1 * $x1 - $x2 * $x2 + $y1 *$y1 - $y2 * $y2;
$a2 = 2 * ($x3 - $x1);
$b2 = 2 * ($y3 - $y1);
$c2 = $x1 * $x1 - $x3 * $x3 + $y1 *$y1 - $y3 * $y3;
$x = ($b1 * $c2 - $b2 * $c1) / ($a1 * $b2 - $a2 * $b1);
$y = ($c1 * $a2 - $c2 * $a1) / ($a1 * $b2 - $a2 * $b1);
$r = sqrt(($x - $x1) * ($x - $x1) + ($y - $y1) * ($y - $y1));
printf("圆的中心坐标(x,y)和半径:<br>");
printf("(%.3f %.3f) %.3f\n", $x, $y, $r);
计算结果是:
圆的中心坐标(x,y)和半径:
(1.000 1.000) 1.414
注:
sqrt()函数用于返回一个数的平方根。
语法是“sqrt(x)
”,表示返回x的平方根。
其中参数x表示一个数字,如果参数 x 是负数,则 sqrt() 函数返回 -1.#IND。(附:在 PHP 5.3.0 之前,该函数把数组当做字符串 Array,这样就返回一个长度为 5 的字符串,并产生一个 E_NOTICE 级别的错误。)
以上就是PHP算法练习十:计算圆的半径和中心坐标的详细内容,更多请关注php爱好者其它相关文章!
-
如何注册谷歌账号(谷歌账号注册方法) 怎么跳过手机验证 时间:2025-09-29
-
access数据库8个经典实例 时间:2025-09-29
-
mmc.exe是什么进程 mmc.exe应用程序错误的原因及解决方法 时间:2025-09-29
-
4种基本的编程命名规范介绍(匈牙利命名法、驼峰式命名法、帕斯卡命名法、下划线命名法) 时间:2025-09-29
-
Ghostscript下载、安装教程 Ghostscript命令参数详解 时间:2025-09-29
-
Linux中内存管理NUMA架构详解 时间:2025-09-29
今日更新
-
揭秘网络四大梗:爆笑名场面背后的神转折,一次看懂全网热梗来龙去脉!
阅读:18
-
四大狗贼是什么梗?揭秘网络热词背后的爆笑真相,看完秒懂!
阅读:18
-
四大虐梗是什么梗?揭秘网络最扎心四大名场面,看完泪崩!
阅读:18
-
全境封锁手游需要什么配置-全境封锁手机配置
阅读:18
-
恋与制作人2025中秋节福利情报-登录可获得中秋赠礼
阅读:18
-
燕云十六声跑图长鸣玉获得方法-快速积攒长鸣玉
阅读:18
-
第五人格第四十赛季精华1时装囚徒黎明赋格设计公布
阅读:18
-
元梦之星美团皮肤怎么获取-圆梦美团皮肤获取
阅读:18
-
华夏绘世录中秋活动金秋献瑞明日开启-参与得奖励
阅读:18
-
QQ飞车T车孙悟空有什么特性-孙悟空赛车技能
阅读:18