# Check whether a given point lies on or inside the rectangle | Set 3

Given two numbers a and b where b < a form a rectangle with points (0, b), (b, 0), (a-b, b), (b, a-b). Given a point (x, y), the task is to check whether this point lies inside or on the rectangle or not.

Examples:

```Input: a = 7, b = 2, x = 5, y = 2;
Output: Given point does not lie on the rectangle

Input: a = 7, b = 2, x = 4, y = 5;
Output: Given point lies inside the rectangle
```

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach: An efficient way is to form 4 line’s equation of a rectangle. Then, if a given point lies in or on the rectangle if and only if, substituting the given point on:

1. The right sideline ( x-y-b = 0 ) must give the value less than or equals to zero.
2. The left sideline ( x-y+a = 0 ) must give the value greater than or equals to one.
3. The upper sideline ( x+y-2*a+b = 0 ) must give the value less than or equals to zero.
4. The lower sideline ( x+y-b = 0 ) must give the value greater than or equals to one.

## C++

 `// C++ program to Check whether a given point ` `// lies inside or on the rectangle or not ` `#include ` `using` `namespace` `std; ` ` `  `// function to Check whether a given point ` `// lies inside or on the rectangle or not ` `bool` `LiesInsieRectangle(``int` `a, ``int` `b, ``int` `x, ``int` `y) ` `{ ` `    ``if` `(x - y - b <= 0 && x - y + b >= 0 ` `        ``&& x + y - 2 * a + b <= 0 && x + y - b >= 0) ` `        ``return` `true``; ` ` `  `    ``return` `false``; ` `} ` ` `  `// Driver code ` `int` `main() ` `{ ` `    ``int` `a = 7, b = 2, x = 4, y = 5; ` ` `  `    ``if` `(LiesInsieRectangle(a, b, x, y)) ` `        ``cout << ``"Given point lies inside the rectangle"``; ` `    ``else` `        ``cout << ``"Given point does not lie on the rectangle"``; ` ` `  `return` `0; ` `} `

## Java

 `// Java program to Check whether  ` `// a given point lies inside or ` `// on the rectangle or not ` `class` `GFG  ` `{ ` ` `  `// function to Check whether  ` `// a given point lies inside  ` `// or on the rectangle or not ` `static` `boolean` `LiesInsieRectangle(``int` `a, ``int` `b,  ` `                                  ``int` `x, ``int` `y) ` `{ ` `if` `(x - y - b <= ``0` `&& x - y + b >= ``0` `&&  ` `    ``x + y - ``2` `* a + b <= ``0` `&& x + y - b >= ``0``) ` `    ``return` `true``; ` ` `  `return` `false``; ` `} ` ` `  `// Driver code ` `public` `static` `void` `main(String[] args)  ` `{ ` `    ``int` `a = ``7``, b = ``2``, x = ``4``, y = ``5``; ` ` `  `    ``if` `(LiesInsieRectangle(a, b, x, y)) ` `        ``System.out.println(``"Given point lies "` `+  ` `                        ``"inside the rectangle"``); ` `    ``else` `        ``System.out.println(``"Given point does not "` `+  ` `                            ``"lie on the rectangle"``); ` `} ` `} ` ` `  `// This code is contributed ` `// by ChitraNayal `

## Python3

 `# Python 3 program to Check whether  ` `# a given point lies inside or on ` `# the rectangle or not ` ` `  `# function to Check whether a given  ` `# point lies inside or on the ` `# rectangle or not  ` `def` `LiesInsieRectangle(a, b, x, y) : ` ` `  `    ``if``(x ``-` `y ``-` `b <``=` `0` `and`  `       ``x ``-` `y ``+` `b >``=` `0` `and`  `       ``x ``+` `y ``-` `2` `*` `a ``+` `b <``=` `0` `and`  `       ``x ``+` `y ``-` `b >``=` `0``) : ` `        ``return` `True` `     `  `    ``return` `False` ` `  `# Driver code ` `if` `__name__ ``=``=` `"__main__"` `: ` ` `  `    ``# multiple assignments ` `    ``a, b, x, y ``=` `7``, ``2``, ``4``, ``5` ` `  `    ``if` `LiesInsieRectangle(a, b, x, y) : ` `        ``print``(``"Given point lies inside"` `                      ``" the rectangle"``) ` `    ``else` `: ` `        ``print``(``"Given point does not lie"`  `                    ``" on the rectangle"``) ` ` `  `# This code is contributed by ANKITRAI1 `

## C#

 `// C# program to Check whether  ` `// a given point lies inside  ` `// or on the rectangle or not ` `using` `System; ` `class` `GFG  ` `{ ` ` `  `// function to Check whether  ` `// a given point lies inside  ` `// or on the rectangle or not ` `static` `bool` `LiesInsieRectangle(``int` `a, ``int` `b,  ` `                               ``int` `x, ``int` `y) ` `{ ` `if` `(x - y - b <= 0 && ` `    ``x - y + b >= 0 &&  ` `    ``x + y - 2 * a + b <= 0 &&  ` `    ``x + y - b >= 0) ` `    ``return` `true``; ` ` `  `return` `false``; ` `} ` ` `  `// Driver code ` `public` `static` `void` `Main()  ` `{ ` `    ``int` `a = 7, b = 2, x = 4, y = 5; ` ` `  `    ``if` `(LiesInsieRectangle(a, b, x, y)) ` `        ``Console.Write(``"Given point lies "` `+  ` `                   ``"inside the rectangle"``); ` `    ``else` `        ``Console.Write(``"Given point does not "` `+  ` `                       ``"lie on the rectangle"``); ` `} ` `} ` ` `  `// This code is contributed  ` `// by ChitraNayal `

## PHP

 `= 0 && ` `        ``\$x` `+ ``\$y` `- 2 * ``\$a` `+ ``\$b` `<= 0 &&  ` `        ``\$x` `+ ``\$y` `- ``\$b` `>= 0) ` `        ``return` `true; ` ` `  `    ``return` `false; ` `} ` ` `  `// Driver code ` `\$a` `= 7; ` `\$b` `= 2; ` `\$x` `= 4; ` `\$y` `= 5; ` ` `  `if` `(LiesInsieRectangle(``\$a``, ``\$b``, ` `                       ``\$x``, ``\$y``)) ` `    ``echo` `"Given point lies "``.  ` `         ``"inside the rectangle"``; ` `else` `    ``echo` `"Given point does not"``.  ` `        ``" lie on the rectangle"``; ` ` `  `// This code is contributed by mits ` `?> `

Output:

```Given point lies inside the rectangle
```

My Personal Notes arrow_drop_up pawanasipugmailcom

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.