Please note, this is a STATIC archive of website www.w3resource.com from 19 Jul 2022, cach3.com does not collect or store any user information, there is no "phishing" involved.
w3resource

PHP Exercises: Compute the radius and the central coordinate of a circle

PHP: Exercise-53 with Solution

Write a PHP program to compute the radius and the central coordinate (x, y) of a circle which is constructed by three given points on the plane surface.

Sample Solution: -

PHP Code:

<?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("Central coordinate(x,y) and radius of the circle:\n");
 printf("(%.3f %.3f) %.3f\n", $x, $y, $r);
?>

Sample Output:

Central coordinate(x,y) and radius of the circle:
(1.000 1.000) 1.414

Flowchart:

Flowchart: Compute the radius and the central coordinate of a circle.

PHP Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a PHP program to print the number of prime numbers which are less than or equal to a given integer.
Next: Write a PHP program to compute the sum of the digits of a number.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



PHP: Tips of the Day

How to Sort Multi-dimensional Array by Value?

Try a usort, If you are still on PHP 5.2 or earlier, you'll have to define a sorting function first:

Example:

function sortByOrder($a, $b) {
    return $a['order'] - $b['order'];
}

usort($myArray, 'sortByOrder');

Starting in PHP 5.3, you can use an anonymous function:

usort($myArray, function($a, $b) {
    return $a['order'] - $b['order'];
});

And finally with PHP 7 you can use the spaceship operator:

usort($myArray, function($a, $b) {
    return $a['order'] <=> $b['order'];
});

To extend this to multi-dimensional sorting, reference the second/third sorting elements if the first is zero - best explained below. You can also use this for sorting on sub-elements.

usort($myArray, function($a, $b) {
    $retval = $a['order'] <=> $b['order'];
    if ($retval == 0) {
        $retval = $a['suborder'] <=> $b['suborder'];
        if ($retval == 0) {
            $retval = $a['details']['subsuborder'] <=> $b['details']['subsuborder'];
        }
    }
    return $retval;
});

If you need to retain key associations, use uasort() - see comparison of array sorting functions in the manual

Ref : https://bit.ly/3i77vCC