# Largest of two distinct numbers without using any conditional statements or operators

Given two positive and distinct numbers, the task is to find the greatest of two given numbers without using any conditional statements(if…) and operators(?: in C/C++/Java).

Examples:

```Input: a = 14, b = 15
Output: 15

Input: a = 1233133, b = 124
Output: 1233133
```

The Approach is to return the value on the basis of the below expression:

a * (bool)(a / b) + b * (bool)(b / a)

The expression a / b will give 1 if a > b and 0 if a < b (only after typecasting the result to bool).
Hence, the answer will be of the form either a + 0 or 0 + b depending upon which one is greater.

## C++

 `// C++ program for above implementation ` `#include ` `using` `namespace` `std; ` ` `  `// Function to find the largest number ` `int` `largestNum(``int` `a, ``int` `b) ` `{ ` `    ``return` `a * (``bool``)(a / b) + b * (``bool``)(b / a); ` `} ` ` `  `// Drivers code ` `int` `main() ` `{ ` `    ``int` `a = 22, b = 1231; ` `    ``cout << largestNum(a, b); ` ` `  `    ``return` `0; ` `} `

## PHP

 `

Output:

```1231
```

My Personal Notes arrow_drop_up Check out this Author's contributed articles.

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.

Improved By : Code_Mech