# Find the radii of the circles which are lined in a row, and distance between the centers of first and last circle is given

Given here are **n** circles which touch each other externally, and are lined up in a row. The distance between the centers of the first and last circle is given. The circles have a radius of equal length. The task is to find the radius of each circle.

**Examples:**

Input:d = 42, n = 4Output:The radius of each circle is 7Input:d = 64, n = 5Output:The radius of each circle is 8

**Approach**:

Suppose there are **n** circles each having radius of length **r**.

Let, the distance between the first and last circles = **d**

From the figure, it is clear,

**r + r + (n-2)*2r = d
2r + 2nr – 4r = d
2nr – 2r = d**

so,

**r = d/(2n-2)**

## C++

`// C++ program to find radii of the circles ` `// which are lined in a row ` `// and distance between the ` `// centers of first and last circle is given ` ` ` `#include <bits/stdc++.h> ` `using` `namespace` `std; ` ` ` `void` `radius(` `int` `n, ` `int` `d) ` `{ ` ` ` `cout << ` `"The radius of each circle is "` ` ` `<< d / (2 * n - 2) << endl; ` `} ` ` ` `// Driver code ` `int` `main() ` `{ ` ` ` `int` `d = 42, n = 4; ` ` ` `radius(n, d); ` ` ` `return` `0; ` `} ` |

*chevron_right*

*filter_none*

## Java

`// Java program to find radii of the circles ` `// which are lined in a row ` `// and distance between the ` `// centers of first and last circle is given ` `import` `java.io.*; ` ` ` `class` `GFG ` `{ ` ` ` `static` `void` `radius(` `int` `n, ` `int` `d) ` `{ ` ` ` `System.out.print( ` `"The radius of each circle is "` ` ` `+d / (` `2` `* n - ` `2` `)); ` `} ` ` ` `// Driver code ` `static` `public` `void` `main (String []args) ` `{ ` ` ` `int` `d = ` `42` `, n = ` `4` `; ` ` ` `radius(n, d); ` `} ` `} ` ` ` `// This code is contributed by anuj_67.. ` |

*chevron_right*

*filter_none*

## Python3

`# Python program to find radii of the circles ` `# which are lined in a row ` `# and distance between the ` `# centers of first and last circle is given ` ` ` `def` `radius(n, d): ` ` ` `print` `(` `"The radius of each circle is "` `, ` ` ` `d ` `/` `(` `2` `*` `n ` `-` `2` `)); ` ` ` `d ` `=` `42` `; n ` `=` `4` `; ` `radius(n, d); ` ` ` ` ` `# This code is contributed by PrinciRaj1992 ` |

*chevron_right*

*filter_none*

## C#

`// C# program to find radii of the circles ` `// which are lined in a row ` `// and distance between the ` `// centers of first and last circle is given ` `using` `System; ` ` ` `class` `GFG ` `{ ` ` ` `static` `void` `radius(` `int` `n, ` `int` `d) ` `{ ` ` ` `Console.Write( ` `"The radius of each circle is "` ` ` `+d / (2 * n - 2)); ` `} ` ` ` `// Driver code ` `static` `public` `void` `Main () ` `{ ` ` ` `int` `d = 42, n = 4; ` ` ` `radius(n, d); ` `} ` `} ` ` ` `// This code is contributed by anuj_67.. ` |

*chevron_right*

*filter_none*

**Output:**

The radius of each circle is 7