# Given equation of a circle as string, find area

• Difficulty Level : Medium
• Last Updated : 05 Apr, 2021

Given an equation of the circle X2 + Y2 = R2 whose center at origin (0, 0) and the radius is R. The task is to find area of circle.
Examples :

```Input :
X*X + Y*Y = 25
Output :
The area of circle centered at origin  is : 78.55

Input :
X*X + Y*Y = 64
Output :
The area of circle centered at origin  is : 201.088```

Attention reader! All those who say programming isn't for kids, just haven't met the right mentors yet. Join the  Demo Class for First Step to Coding Coursespecifically designed for students of class 8 to 12.

The students will get to learn more about the world of programming in these free classes which will definitely help them in making a wise career choice in the future.

## Approach

• Given an equation X2 + Y2 = R2 and store it into string ‘str’.
• Count length of string and store it into ‘len’.
• Start loop from 0 to len – 1 and check if str[i] == ‘=’.
• Store characters after ‘=’ into string variable st.
• Convert string ‘st’ into digits and store it into ‘radius_square’.
• Use formula Pi * R2 to find area of circle(multiply by Pi).

## C++

 `// C++ program to find area of circle``// when equation of circle give.` `#include ``#define PI 3.142``using` `namespace` `std;` `// Function to find the area``double` `findArea(``double` `radius)``{``    ``return` `PI * ``pow``(radius, 2);``}` `// Function to return the value of radius``static` `double` `findradius(string str)``{``    ` `    ``// Initialization``    ``double` `radius = 0;``    ` `    ``// For storing the value of R*R``    ``string st = ``""``;` `    ``// For counting the number of``    ``// spaces in the string``    ``int` `c = 0;` `    ``// calculate the length of the``    ``int` `len = str.length();` `    ``// getting the value of R*R``    ``// After = sign``    ``for` `(``int` `i = 0; i < len; i++) {``        ``if` `(str[i] == ``'='``) {``            ``c = 1;``        ``}``        ``else` `if` `(c == 1 && str[i] != ``' '``) {``            ``st = st + str[i];``        ``}``    ``}` `    ``// Converting the digits into integer``    ``// Taking square root of that number``    ``radius = (``double``)``sqrt``(stoi(st));``    ``return` `radius;``}` `int` `main()``{` `    ``// Static input for equation``    ``// of circle``    ``string str = ``"X*X + Y*Y = 100"``;` `    ``// calling the Function``    ``double` `radius = findradius(str);` `    ``// Display the result``    ``cout << ``"The area of circle "` `<<``       ``"centered at origin is : "` `<<``           ``findArea(radius) << endl;` `    ``return` `0;``}`

## Java

 `// Java program to find area of circle``// when equation of circle give.``import` `java.io.*;` `public` `class` `GFG {` `    ``static` `double` `PI = ``3.142``;``    ` `    ``// Function to find the area``    ``static` `double` `findArea(``double` `radius)``    ``{``        ``return` `PI * Math.pow(radius, ``2``);``    ``}``    ` `    ``// Function to return the value of radius``    ``static` `double` `findradius(String str)``    ``{``        ``double` `radius = ``0``;``        ` `        ``// For storing the value of radius * radius``        ``String st = ``""``;` `        ``// For counting the number of spaces``        ``// in the string``        ``int` `c = ``0``;` `        ``// calculate the length of the``        ``int` `len = str.length();``        ` `        ``// getting the value of radius * radius``        ``// After = sign``        ``for` `(``int` `i = ``0``; i < len; i++) {``            ``if` `(str.charAt(i) == ``'='``) {``                ``c = ``1``;``            ``}``            ``else` `if` `(c == ``1` `&& str.charAt(i) != ``' '``)``            ``{``                ``st = st + str.charAt(i);``            ``}``        ``}` `        ``// Converting the digits into integer``        ``// Taking square root of that number``        ``if` `(c == ``1``)``            ``radius = (``double``)Math.sqrt(``                            ``Integer.parseInt(st));``        ``return` `radius;``    ``}` `    ``public` `static` `void` `main(String[] args)``    ``{` `        ``// Static input for equation of circle``        ``String str = ``"X*X + Y*Y = 100"``;` `        ``// calling the Function``        ``double` `radius = findradius(str);` `        ``// Display the result``        ``System.out.println(``"The area of circle"``                  ``+ ``" centered at origin is : "``                              ``+ findArea(radius));``    ``}``}`

## Python3

 `# python program to find area of circle``# when equation of circle give.` `import` `math` `# Function to find the area``def` `findArea(radius):``    ` `    ``return` `math.pi ``*` `pow``(radius, ``2``)` `# Function to return the value of radius``def` `findradius(``str``):``    ` `    ``#Initialization``    ``radius ``=` `0``    ` `    ``# For storing the value of R*R``    ``st ``=` `""` `    ``# For counting the number of``    ``# spaces in the string``    ``c ``=` `0` `    ``# calculate the length of the``    ``Len` `=` `len``(``str``)` `    ``# getting the value of R*R``    ``# After = sign``    ``for` `i ``in` `range``(``0``, ``Len``):``        ``if` `(``str``[i] ``=``=` `'='``):``            ``c ``=` `1``        ``elif` `(c ``=``=` `1` `and` `str``[i] !``=` `' '``):``            ``st ``=` `st ``+` `str``[i]``        ` `    ``# Converting the digits into integer``    ``# Taking square root of that number``    ``radius ``=` `float``(math.sqrt(``float``(st)))``    ``return` `radius` `# Static input for equation``# of circle``str` `=` `"X*X + Y*Y = 100"` `# calling the Function``radius ``=` `findradius(``str``)` `# Display the result``print``( ``"The area of circle "` `,``"centered at origin is : "` `,``    ``(findArea(radius)))`  `# This code is contributed by Sam007.`

## C#

 `// C# program to find area of circle``// when equation of circle give.``using` `System;` `class` `GFG``{``    ``// Function to find the area``    ``static` `double` `findArea(``double` `radius)``    ``{``        ``return` `Math.PI * Math.Pow(radius, 2);``    ``}``    ` `    ``// Function to return the value of radius``    ``static` `double` `findradius(``string` `str)``    ``{``        ``double` `radius = 0;``        ` `        ``// For storing the value``        ``// of radius * radius``        ``String st = ``""``;` `        ``// For counting the number``        ``// of spaces in the string``        ``int` `c = 0;` `        ``// calculate the length of the``        ``int` `len = str.Length;``        ` `        ``// getting the value of radius * radius``        ``// After = sign``        ``for` `(``int` `i = 0; i < len; i++)``        ``{``            ``if` `(str[i] == ``'='``)``            ``{``                ``c = 1;``            ``}``            ``else` `if` `(c == 1 && str[i] != ``' '``)``            ``{``                ``st = st + str[i];``            ``}``        ``}` `        ``// Converting the digits into integer``        ``// Taking square root of that number``        ``if` `(c == 1)``            ``radius = (``double``)Math.Sqrt(``                        ``int``.Parse(st));``        ``return` `radius;``    ``}` `    ``// Driver code``    ``public` `static` `void` `Main()``    ``{``        ``// Static input for equation of circle``        ``string` `str = ``"X*X + Y*Y = 100"``;` `        ``// calling the Function``        ``double` `radius = findradius(str);` `        ``// Display the result``        ``Console.WriteLine(``"The area of circle"` `+``                          ``" centered at origin is : "` `+``                          ``System.Math.Round(findArea(radius),1));``    ``}``}` `// This code is contributed by Sam007`

## Javascript

 ``
Output:
`The area of circle centered at origin is : 314.2`

My Personal Notes arrow_drop_up