# What is the average distance between points in a square?

In my family we love riddles, puzzles and mathematical challenges and it’s not unusual that we share weird problems via our whatsapp group. A couple weeks ago, we received the following question from my brother Alvaro: “what is the average distance between two points in a square?”

Solving this problem mathematically with integrals exceeds my current level of skill, but I realised it would be rather easy to solve this for a discrete amount of points in a square NxN matrix. I could solve it for a matrix of 10×10, 20×20 and see whether the solution converged to a number.

With my raspberry pi, connected via ssh from my iphone, from the comfort of my sofa I wrote the following program in c that iterated with increasing sizes of square matrixes

This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 #include #include #include double distancia(int x1,int y1,int x2,int y2){ double distx=x2-x1; double disty=y2-y1; double distanciaalcuadrado=abs(pow(distx,2)+pow(disty,2)); double distancia=sqrt(distanciaalcuadrado); return distancia; } void mediaPuntos(int intervalos){ double suma=0; int contador=0; double media=0.0; double distancias=0.0; int x1=1; int x2=1; int y1=1; int y2=1; double medianor=0; for(x1=1;x1<=intervalos;x1++){ for(y1=1;y1<=intervalos;y1++){ for(x2=1;x2<=intervalos;x2++){ for(y2=1;y2<=intervalos;y2++){ contador++; distancias=distancia(x1,y1,x2,y2); suma=suma+distancias; media=suma/contador; medianor=media/intervalos; //printf("%d:(%d,%d)-(%d,%d)=%f [%f/%d]=%f\n",contador,x1,y1,x2,y2,distancias,media,intervalos,medianor); } } } } printf("%d:%d [%f/%d]=%f\n",intervalos,contador,media,intervalos,medianor); } void main(void){ printf("sumando distancias\n"); int intervalos=10; int intervalosmax=100000; for(;intervalos<=intervalosmax;intervalos++){ mediaPuntos(intervalos); } }

When reaching a 216×216 matrix, the number of combinations was 2 thousand million at which some variable must have exceeded the maximum size of a double type because I started getting negative results. The result is that the mean distance between any two points in a square is 0.5214 times the length of the side. I have no clue what this ratio means mathematically.

Do you know what 0.5214 represents in a square of side 1? 🙂