Skip to content
Related Articles

Related Articles

Improve Article

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

  • Difficulty Level : Easy
  • Last Updated : 01 Apr, 2021

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 <iostream>
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;
}

Java




// Java program for above implementation
class GFG
{
 
    // Function to find the largest number
    static int largestNum(int a, int b)
    {
        return a * ((a / b) > 0 ? 1 : 0) + b * ((b / a) > 0 ? 1 : 0);
    }
 
    // Drivers code
    public static void main(String[] args)
    {
        int a = 22, b = 1231;
        System.out.print(largestNum(a, b));
    }
}
 
// This code is contributed by 29AjayKumar

Python3




# Function to find the largest number
def largestNum(a, b):
    return a * (bool)(a // b) + \
           b * (bool)(b // a);
 
# Driver Code
a = 22;
b = 1231;
print(largestNum(a, b));
 
# This code is contributed by Rajput-Ji

C#




     
// C# program for above implementation
using System;
 
class GFG
{
 
    // Function to find the largest number
    static int largestNum(int a, int b)
    {
        return a * ((a / b) > 0 ? 1 : 0) + b * ((b / a) > 0 ? 1 : 0);
    }
 
    // Driver code
    public static void Main(String[] args)
    {
        int a = 22, b = 1231;
        Console.Write(largestNum(a, b));
    }
}
 
// This code is contributed by Rajput-Ji

PHP




<?php
// PHP program for above implementation
 
// Function to find the largest number
function largestNum($a, $b)
{
    return ($a * (boolean)floor(($a / $b))) +
           ($b * (boolean)floor(($b / $a)));
}
 
// Drivers code
$a = 22; $b = 1231;
echo(largestNum($a, $b));
 
// This code is contributed
// by Mukul Singh

Javascript




<script>
 
// Javascript program for above implementation
 
// Function to find the largest number
function largestNum(a , b)
{
    return a * (parseInt(a / b) > 0 ? 1 : 0) +
           b * (parseInt(b / a) > 0 ? 1 : 0);
}
 
// Driver code
var a = 22, b = 1231;
 
document.write(largestNum(a, b));
 
// This code is contributed by shikhasingrajput
 
</script>
Output: 
1231

 

Attention reader! Don’t stop learning now. Participate in the Scholorship Test for First-Step-to-DSA Course for Class 9 to 12 students.




My Personal Notes arrow_drop_up
Recommended Articles
Page :