给定一个圆X 2 + Y 2 = R 2的方程,其圆心在原点 (0, 0),半径为 R。任务是求圆的面积。
例子 :
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
方法
- 给定一个方程 X 2 + Y 2 = R 2并将其存储到字符串’str’ 中。
- 计算字符串的长度并将其存储到“len”中。
- 从 0 到 len – 1 开始循环并检查 str[i] == ‘=’。
- 将 ‘=’ 之后的字符存储到字符串变量 st 中。
- 将字符串’st’ 转换为数字并将其存储到 ‘radius_square’ 中。
- 使用公式Pi * R 2找到圆的面积(乘以 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
输出:
The area of circle centered at origin is : 314.2