Given outer circle radius R and inner circle radius r, making circles from same center and forming boundary between them. Now, given X,Y co-ordinates which denotes center of new circle to be formed with radius rad, your task is to check whether the circle with co-ordinate X,Y as center can fit in the boundary of circles formed or not.
Examples:
Input : R = 8, r = 4 x = 5, y = 3, rad = 1 Output : Fits Input : R = 8, r = 4 x = 5, y = 3, rad = 3. Output : Doesn't Fit
1 – Doesn’t fits
2 – Fits
The idea is to calculate the distance between the center (0, 0) and the co-ordinates of the circle to be checked. If distance + radius (of the circle to be checked) is less than or equal to Outer Radius and distance – radius (of the circle to be checked) is greater than or equal to Radius of Outer circle – Radius Inner circle
It fits.
Here is the implementation :
C++
// CPP program to check whether circle with given // co-ordinates reside within the boundary // of outer circle and inner circle #include <bits/stdc++.h> using namespace std; // function to check if given circle fit in // boundary or not void fitOrNotFit( int R, int r, int x, int y, int rad) { // Distance from the center double val = sqrt ( pow (x, 2) + pow (y, 2)); // Checking the corners of circle if (val + rad <= R && val - rad >= R - r) cout << "Fits
" ; else cout << "Doesn't Fit
" ; } // driver program int main() { // Radius of outer circle and inner circle // respectively int R = 8, r = 4; // Co-ordinates and radius of the circle // to be checked int x = 5, y = 3, rad = 3; fitOrNotFit(R, r, x, y, rad); return 0; } |
Java
// Java program to check whether circle with given // co-ordinates reside within the boundary // of outer circle and inner circle import java.util.*; class GFG { // function to check if given circle fit in // boundary or not static void fitOrNotFit( int R, int r, int x, int y, int rad) { // Distance from the center double val = Math.sqrt(Math.pow(x, 2 ) + Math.pow(y, 2 )); // Checking the corners of circle if (val + rad <= R && val - rad >= R - r) System.out.println( "Fits" ); else System.out.println( "Doesn't Fit" ); } // driver program public static void main (String[] args) { // Radius of outer circle and inner circle // respectively int R = 8 , r = 4 ; // Co-ordinates and radius of the circle // to be checked int x = 5 , y = 3 , rad = 3 ; fitOrNotFit(R, r, x, y, rad); } } /* This Code is contributed by Kriti Shukla */ |
Python3
# Python3 program to check # whether circle with given # co-ordinates reside # within the boundary # of outer circle # and inner circle import math # function to check if # given circle fit in # boundary or not def fitOrNotFit(R, r, x, y, rad) : # Distance from the center val = math.sqrt(math. pow (x, 2 ) + math. pow (y, 2 )) # Checking the corners of circle if (val + rad < = R and val - rad > = R - r) : print ( "Fits
" ) else : print ( "Doesn't Fit" ) # driver program # Radius of outer circle and inner circle # respectively R = 8 r = 4 # Co-ordinates and radius of the circle # to be checked x = 5 y = 3 rad = 3 fitOrNotFit(R, r, x, y, rad) # This code is contributed by # Smitha Dinesh Semwal |
C#
// C# program to check whether circle with given // co-ordinates reside within the boundary // of outer circle and inner circle using System; class GFG { // function to check if given circle fit in // boundary or not static void fitOrNotFit( int R, int r, int x, int y, int rad) { // Distance from the center double val = Math.Sqrt(Math.Pow(x, 2) + Math.Pow(y, 2)); // Checking the corners of circle if (val + rad <= R && val - rad >= R - r) Console.WriteLine( "Fits" ); else Console.WriteLine( "Doesn't Fit" ); } // Driver program public static void Main () { // Radius of outer circle and inner circle // respectively int R = 8, r = 4; // Co-ordinates and radius of the circle // to be checked int x = 5, y = 3, rad = 3; fitOrNotFit(R, r, x, y, rad); } } // This Code is contributed by Anant Agarwal. |
PHP
<?php // PHP program to check whether // circle with given co-ordinates // reside within the boundary // of outer circle and inner circle // function to check if given // circle fit in boundary or not function fitOrNotFit( $R , $r , $x , $y , $rad ) { // Distance from the center $val = sqrt(pow( $x , 2) + pow( $y , 2)); // Checking the corners of circle if ( $val + $rad <= $R && $val - $rad >= $R - $r ) echo "Fits
" ; else echo "Doesn't Fit
" ; } // Driver Code // Radius of outer circle and // inner circle respectively $R = 8; $r = 4; // Co-ordinates and radius of // the circle to be checked $x = 5; $y = 3; $rad = 3; fitOrNotFit( $R , $r , $x , $y , $rad ); // This Code is contributed by vt_m. ?> |
Output:
Doesn't Fit
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
This article is attributed to GeeksforGeeks.org
leave a comment
0 Comments