|
sqrt
Square root
(PHP 4, PHP 5)
Example 1161. sqrt() example<?php Related Examples ( Source code ) » sqrt Examples ( Source code ) » sqrt Code Examples / Notes » sqrtjouhni
To get any root of a number your can use the pow() function: pow(8, 1/3) which gives you the third root of eight. Jouhni btharper1221
this is something you can use if you need an exact answer to a root problem, this includes an echo outside of the function to show how it works, it will return it such as $ret[0] is the number still part of the root (this is the exactness part of it) $ret[1] is the number of roots and $ret[2] is 1 or 0, 1 being that there should be an i following the number of roots (imaginary) <?php function newrt($val,$rt){ $i = 0; if(($rt % 2 == 0) && ($val < 1)){ $i = 1; $val = (-$val); } $c = 1; if(($rt % 2 != 0) && ($val < 0)){ $c = -$c; $val = -$val; } for($d = 2; pow($d,$rt) <= abs($val); $d++){ if($val % (pow($d,$rt)) == 0){ $val = ($val/(pow($d,$rt))); $c = ($c*$d); $d--; } } $ret[0] = $val; $ret[1] = $c; $ret[2] = $i; return $ret; }//end function newrt $ret = newrt($num,$num2); if($ret[0] != 1){ if($ret[2] == 0) echo $ret[1]." roots of ".$ret[0]; if($ret[2] == 1) echo $ret[1]."<b><i>i</i></b> roots of ".$ret[0]; }elseif($ret[0] == 1){ if($ret[2] == 0) echo $ret[1]; if($ret[2] == 1) echo "$ret[1]<b><i>i</i></b>"; } ?> chris dot rutledge
Just a note to say you can take the square root of a negative number - it returns an imaginary number. One might do it like this //take initial value of $x $abs_x = abs($x); $answer = sqrt($abs_x); echo $answer; if ($x < 0) echo"<b><i>i</i></b>"; morvandiumnospam
I find this useful for any grid system where distances need to be computed (maps and graphs, mostly). Just use the distance between points formula (pseudo-code): sqrt((x2-x1)^2+(y2-y1)^2) to find the distance between two points. php user
How to calculate triangle's area if you haven't height measure. You need only sides' measure. it would have to work. (formula of erone) $s1 = side 1 $s2 = side 2 $s3 = side 3 <? function area($s1,$s2,$s3) { $calc1 = ($s1+$s2+$s3)/2; $calc2 = $p*($p-$s1)*($p-$s2)*($p-$s3); $result = round(sqrt($p),2); return $result; } ?> example of I use: <? //This will make to return the area of a triangle with sides of 3,4,5 $area = area(3,4,5); echo $area; ?> php nospam
creating perfect squares... (no decimals) <? # initial value $i = 0; #set any limit you want $setSomeLimit = 10000; # do it! .... do it! ... do it! do { # find the square root $sqRoot = sqrt($i); # not a decimal? that it is a perfect square! ^_^ if ( ereg ("^[0-9]{1,12}$", $sqRoot)) { # suppose that the_square_root = teh_square_root print " perfect_square_root is of $i is $sqRoot"; } $i++; # next!! # keeps running until it reaches the limit } while ($i < $setSomeLimit); ?> bishop
Compute a triangle's area: function triangleArea($a, $b /* ... */) { if (func_num_args() === 3) { $s = .5 * ($a + $b + ($c = func_get_arg(2))); return sqrt($s * ($s-$a) * ($s-$b) * ($s-$c)); } else { return (.5 * $a * $b); } } With 2 args, parameters are triangle's base and height. With 3 args, parameters are the lengths of each side. Argument order is not important. Either way, you get the area. tcn
Checking if the square you want to take from a number is valid or not (you can't take the root of a negative number) if ($i<0) { echo "Error! The number you specified can't be rooted! It's negative! } else { echo "The square root of your number is ".sqrt($i); } 29-mar-2006 09:03
A much easier way to find perfect squares: This method uses integer roots to find perfect squares instead of integer squares to find integer roots. <? # initial value $i = 0; #set any limit you want $setSomeLimit = 10000; # do it! .... do it! ... do it! for ($n = 1; $n < sqrt($setSomeLimit; $n++) { // Find the square $s= $n * $n; print " perfect_square_root is of $s is $n"; } ?> |