PHP Challenge 7 - Going Round in Circles

In this challenge you are required to let the user enter the coordinates of the centre of two circles and their respective radii.

You then have to calculate if the circles:

  • touch
  • do not touch
  • overlap

If we consider some simple examples then we could have the following:


For example:

  • Circle A has coordinates (1, 2) and a radius of 2
  • Circle B has coordinates (-1, -3) and a radius of 3

If we were to sketch this then we would have:

Circle Coordinates

In this case we can cearly see that the 2 circles do not touch.


This challenge involves the use of some mathematics. You will need to apply Pythagoras' Theorem.

You will need to calculate the distance between the centres of the 2 circles. In our example case we have the following:

Triangles and Pythagoras

What considerations will you need to give if the centres of the circles are vertically or horizontally opposite each other?

What tests will you need to make on the user inputs?


1 (2, 3) 2 (5, 7) 3 The circles touch
2 (-1, 0) 1 (5, 0) 4 The circles do not touch
3 (-4, 7) 10 (1, -5) 5 The circles overlap

Would you like the solution to this challenge?

The full video solution together with downloadable code is available in the PHP for Beginners course.

This course is taught by Patrick Morrow, a national award-winning teacher, who is very active in the course and who provides full support.

To enrol in the course click here.


Your email address will not be published.

User Avatar

An interesting challenge. There is a lot more to it than you first think!

by Edwin, 11-Jan-2016

User Avatar

Yes, this is an interesting challenge. Few students manage to consider all possibilities.

by Patrick Morrow, 14-Jan-2016

PHP for Beginners

Would you like lifetime access to the hugely successful PHP for Beginners course? Click here to find out how.

FREE Code Snippets

FREE hints and tips delivered direct to you once per month.