Tutorialspoint.dev

Sort 3 Integers without using if condition or using only max() function

Given three inte­gers, print them in sorted order with­out using if condition.

Examples :

Input  : a = 3, b = 2, c = 9
Output : 2 3 9

Input  : a = 4, b = 1, c = 9
Output : 1 4 9



Approach :
1. Find the max­i­mum of a, b, c using max() function.
3. Mul­ti­ply all inte­gers by –1. Again find Min­i­mum of –a, –b, –c using max() function.
4. Add the Max and Min from above steps and sub­tract the sum from (a+b+c). It gives us mid­dle element.

It works for negative numbers also.

C++

// C++ program to print three numbers 
// in sorted order using max function
#include<bits/stdc++.h>
using namespace std;
  
void printSorted(int a, int b, int c)
{
    // Find maximum element
    int get_max = max(a, max(b, c));
  
    // Find minimum element
    int get_min = -max(-a, max(-b, -c));
  
    int get_mid = (a + b + c)
                 - (get_max + get_min);
  
    cout << get_min << " " << get_mid
        << " " << get_max;
}
  
// Driver code
int main()
{
    int a = 4, b = 1, c = 9;
    printSorted(a, b, c);
    return 0;
}

Java

// Java program to print three numbers 
// in sorted order using max function
class GFG 
{
      
    static void printSorted(int a, int b, int c)
    {
        // Find maximum element
        int get_max = Math.max(a, Math.max(b, c));
      
        // Find minimum element
        int get_min = -Math.max(-a, Math.max(-b, -c));
      
        int get_mid = (a + b + c) 
                      - (get_max + get_min);
      
        System.out.print(get_min + " " + get_mid
                                + " " + get_max);
    }
      
    // Driver code
    public static void main(String[] args)
    {
          
        int a = 4, b = 1, c = 9;
          
        printSorted(a, b, c);
    }
}
  
// This code is contributed by Anant Agarwal.

/div>

Python3

# Python3 program to print three numbers 
# in sorted order using max function
  
def printSorted(a, b, c):
      
    # Find maximum element
    get_max = max(a, max(b, c))
  
    # Find minimum element
    get_min = -max(-a, max(-b, -c))
  
    get_mid = (a + b + c) - (get_max + get_min)
  
    print(get_min, " " , get_mid, " " , get_max)
  
# Driver Code
a, b, c = 4, 1, 9
printSorted(a, b, c)
  
# This code is contributed by Anant Agarwal.

C#

// C# program to print three numbers 
// in sorted order using max function
using System;
  
class GFG {
      
    static void printSorted(int a, int b, int c)
    {
        // Find maximum element
        int get_max = Math.Max(a, Math.Max(b, c));
      
        // Find minimum element
        int get_min = -Math.Max(-a, Math.Max(-b, -c));
      
        int get_mid = (a + b + c) -
                      (get_max + get_min);
      
    Console.Write(get_min + " " + get_mid
                          + " " + get_max);
    }
      
    // Driver code
    public static void Main()
    {
        int a = 4, b = 1, c = 9;
          
        printSorted(a, b, c);
    }
}
  
// This code is contributed by nitin mittal.

PHP

<?php
// PHP program to print three numbers 
// in sorted order using max function
  
function printSorted($a, $b, $c)
{
      
    // Find maximum element
    $get_max = max($a, max($b, $c));
  
    // Find minimum element
    $get_min = -max(-$a, max(-$b, -$c));
  
    $get_mid = ($a + $b + $c) - 
               ($get_max + $get_min);
  
    echo $get_min , " " , $get_mid, " " , $get_max;
}
  
    // Driver Code
    $a = 4;
    $b = 1; 
    $c = 9;
    printSorted($a, $b,$c);
  
// This code is contributed by nitin mittal.
?>


Output:

 1 4 9

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

You Might Also Like

leave a comment

code

0 Comments

load comments

Subscribe to Our Newsletter