利用PHP怎么求解方程

  介绍

本篇文章给大家分享的是有关利用PHP怎么求解方程,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

<强>一、需求

1。给出一个平均值X,反过来求出来,得到这个平均值X的三个数X1, X2, X3,最大值与最小值的差值要小于0.4 (X1-X3都是保留1位小数的数)
2。这三个数X1, X2, X3代表了三组数。满足下面的公式:X1=[(m1, m2)/(m1 - m0)) * 100 (@1);

m0、m1、m2三个数的边界条件如下:

1) 48 & lt; m0<51
2) 0.45 & lt; m1 - m1<0.55
3) m1, m2, m3都是4位的正小数

<强>二,实现

根据需求,我想到了使用两个函数来进行处理。

1)一个是已知平均数,求得到这个平均数满足条件的三个数的函数createX ()

2)一个是已知X,求满足公式(@1)和边界条件的三个小数m0、m1、m2

下面是具体的代码实现,不足之处请指出

& lt; php ?//运行echo “开始运行,\ n";   run ();   echo “运行结束,\ n";   function  run ()   {/* {{{*/data 美元;=,阵列(40.9,40.5,44.3,47.8,48.5,42.1,46.2);   时间=美元才能res 数组();   foreach才能(dataas美元键)   {/*{{{才能*/echo “处理,{$关键}\ n";   ,,,resX 美元;=,createX(关键);   ,,,foreach (resXas keyX美元)   ,,,{   ,,,,,keyStr 美元;=,(字符串)美元的关键;   ,,,,,keyXStr 美元;=,(string) keyX美元;   ,,,,,res美元($ keyStr] [keyXStr美元],=,createParams4M ($ keyX);   ,,,}   ,,}/*}}}*/error_log (print_r (res美元,真的)!”\ n",, 3,, & # 39;/tmp/result.log& # 39;);   var_dump (99999, res);退出;   返回才能res美元;   }/*}}}*///1。产生平均数function  createX (ave)美元   {{{{/* */sum 美元;=,3 * (ave 美元;*,1000);   时间=美元才能x1  x2 美元;=,x3 美元;=,0;   美元才能rand4X1X2 =,兰德(0,300);//美元才能x2 祝辞,x1 美元;祝辞,x3;美元($ i=0;, i<美元,美元ave  *, 1000, +, 550;,我+ +)美元   {才能   ,,,x2 美元;=,我美元;   ,,,x1 美元;=,x2 美元;作用;rand4X1X2美元;   x3 美元,,,,=,sum 美元;——(x1 美元;+,x2美元);   ,,,positive 美元;=,x1 美元;祝辞,0,,,,x2 美元;祝辞,0,,,,x3 美元;祝辞,0;   ,,,flag 美元;=,(x2安康;x3 美元;& lt;, 400,,,, x2 美元;作用;x3 美元;祝辞,200);   ,,,如果(positive 美元;,,,美元标志)   ,,,{   ,,,,,//echo “捕捉到\ n"; roundX1 美元;=,圆(x1/1000美元,,1);   ,,,,,roundX2 美元;=,圆(x2/1000美元,,1);   ,,,,,roundX3 美元;=,圆(x3/1000美元,,1);   ,,,,,res 美元;=,数组(roundX1美元,roundX2美元,美元roundX3);   ,,,,,flag 美元;=,roundX1 美元;!=,roundX2美元   ,,,,,,,,,,,,roundX3 美元;!=,roundX2美元   ,,,,,,,,,,,,roundX3 美元;!=,roundX1美元;   ,,,,,如果(美元标志)   ,,,,,{   ,,,,,,,//echo “捕捉到\ n";返回res美元;   ,,,,,}   ,,,}   ,,}   echo 才能“Fail 未捕捉到\ n";   returnarray才能(x1, x2,美元,美元x3);   }/*}}}*///2。产生平均数function  createParams4M (aveX美元)   {{{{/* */begin 美元;=,48000;   美元才能最终获得=,51000;   时间=美元才能m0  m1 美元;=,m2 美元;=,0;   美元才能rand4M1M2 =,兰德(450,,550);   美元才能m0 =,兰德(美元开始,结束美元);   时间=美元才能m1  m0 美元;+,rand4M1M2美元;   时间=美元才能m2  m1 美元;作用;((m1 美元;作用;m0美元)* aveX/100美元);//才能echo “捕捉到\ n"; returnarray(圆(m0/1000美元,,4),,圆(m1/1000美元,,4),,圆(m2/1000美元,,4));   }/*}}}*/?在

<强>三,遇到的问题和不足之处

1。【数组键值不能相同】开始遇到的是得到的平均数的原始三个值有可能有相同的,但是数组中的关键是不能相同的,于是做了处理。

同时,键值做了字符串的转化

2。【小数处理】还有就是因为涉及的是4位的小数,循环遍历,满足条件输出不方便,就乘1000年以扩大倍数,最后再除以1000还原。

以上就是利用PHP怎么求解方程,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

利用PHP怎么求解方程