查找点是否在圆内

发布于 2024-07-24 12:46:07 字数 3706 浏览 8 评论 0

给定一个圆(中心和半径的坐标) 和一个点(坐标),请确定该点是否位于圆内或圆上。

Input: x = 4, y = 4 // Given Point
       circle_x = 1, circle_y = 1, rad = 6; // Circle
Output: Inside 

Input: x = 3, y = 3 // Given Point
       circle_x = 0, circle_y = 1, rad = 2; // Circle
Output: Outside

强烈建议您最小化浏览器,然后自己尝试。

这个想法是计算点到中心的距离。如果距离小于或等于半径。要点在里面,在外面。

以下是上述想法的实现。

C++

// C++ program to check if a point 
// lies inside a circle or not
#include 
using namespace std;
  
bool isInside(int circle_x, int circle_y,
                   int rad, int x, int y)
{
    // Compare radius of circle with distance 
    // of its center from given point
    if ((x - circle_x) * (x - circle_x) +
        (y - circle_y) * (y - circle_y) <= rad * rad)
        return true;
    else
        return false;
}
  
// Driver function
int main()
{
    int x = 1, y = 1;
    int circle_x = 0, circle_y = 1, rad = 2;
    isInside(circle_x, circle_y, rad, x, y) ? 
    cout << "Inside" : cout << "Outside";
}

Java

// Java program to check if a point lies
// inside a circle or not
  
class GFG {
  
    static boolean isInside(int circle_x, int circle_y, 
                                 int rad, int x, int y)
    {
        // Compare radius of circle with
        // distance of its center from
        // given point
        if ((x - circle_x) * (x - circle_x) +
            (y - circle_y) * (y - circle_y) <= rad * rad)
            return true;
        else
            return false;
    }
  
    // Driver Program to test above function
    public static void main(String arg[])
    {
        int x = 1, y = 1;
        int circle_x = 0, circle_y = 1, rad = 2;
  
        if (isInside(circle_x, circle_y, rad, x, y))
            System.out.print("Inside");
        else
            System.out.print("Outside");
    }
}
  
// This code is contributed by Anant Agarwal.

Python3

# Python3 program to check if
# a point lies inside a circle 
# or not
  
def isInside(circle_x, circle_y, rad, x, y):
      
    # Compare radius of circle
    # with distance of its center
    # from given point
    if ((x - circle_x) * (x - circle_x) + 
        (y - circle_y) * (y - circle_y) <= rad * rad):
        return True;
    else:
        return False;
  
# Driver Code
x = 1; 
y = 1;
circle_x = 0; 
circle_y = 1; 
rad = 2;
if(isInside(circle_x, circle_y, rad, x, y)):
    print("Inside");
else:
    print("Outside");
  
# This code is contributed
# by mits.

C#

// C# program to check if a point lies
// inside a circle or not
using System;
  
class GFG {
  
    static bool isInside(int circle_x, int circle_y, 
                              int rad, int x, int y)
    {
        // Compare radius of circle with
        // distance of its center from
        // given point
        if ((x - circle_x) * (x - circle_x) +
            (y - circle_y) * (y - circle_y)    <= rad * rad)
            return true;
        else
            return false;
    }
  
    // Driver Program to test above function
    public static void Main()
    {
        int x = 1, y = 1;
        int circle_x = 0, circle_y = 1, rad = 2;
  
        if (isInside(circle_x, circle_y, rad, x, y))
            Console.Write("Inside");
        else
            Console.Write("Outside");
    }
}
  
// This code is contributed by nitin mittal.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

还不是爱你

暂无简介

0 文章
0 评论
22 人气
更多

推荐作者

安静被遗忘

文章 0 评论 0

喔爱吃橙子

文章 0 评论 0

草莓味的萝莉

文章 0 评论 0

梦里兽

文章 0 评论 0

mb_83J3Cyxa

文章 0 评论 0

时间海

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文