Sort 3 Integers without using if condition or using only max() function
Given three integers, print them in sorted order without 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 maximum of a, b, c using max() function.
3. Multiply all integers by –1. Again find Minimum of –a, –b, –c using max() function.
4. Add the Max and Min from above steps and subtract the sum from (a+b+c). It gives us middle 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. |
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. ?> |
Javascript
<script> // JavaScript program for the above approach function printSorted(a, b, c) { // Find maximum element let get_max = Math.max(a, Math.max(b, c)); // Find minimum element let get_min = -Math.max(-a, Math.max(-b, -c)); let get_mid = (a + b + c) - (get_max + get_min); document.write(get_min + " " + get_mid + " " + get_max); } // Driver Code let a = 4, b = 1, c = 9; printSorted(a, b, c); // This code is contributed by splevel62. </script> |
Output:
1 4 9
Time Complexity: O(1)
Auxiliary Space: O(1)
This article is contributed by Rakesh Kumar. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Please Login to comment...