C++ Program to Find the Largest of Three Numbers Using Ternary Operator

In programming, comparing values and determining the largest number is a common task. One of the efficient ways to achieve this is by using the ternary operator, which is a concise conditional operator that allows for inline conditional expressions. This article will demonstrate how to find the largest of three numbers using the ternary operator in C++.

Prerequisites

Before diving into the example, it’s essential to have a basic understanding of:

  • Basic input and output operations in C++
  • Conditional statements
  • Ternary operator syntax in C++
  • Compiling and running a C++ program

Understanding the Ternary Operator

The ternary operator in C++ is a shorthand for the if-else statement and is used to return one of two values based on a condition. The syntax of the ternary operator is:

C++
condition ? value_if_true : value_if_false;

This operator can be nested to handle multiple conditions.

C++ Program to Find the Largest of Three Numbers Using Ternary Operator

C++
#include <iostream>
using namespace std;

int main() {
    int num1, num2, num3;
    
    // Taking input from the user
    cout << "Enter three numbers: ";
    cin >> num1 >> num2 >> num3;
    
    // Using nested ternary operator to find the largest number
    int largest = (num1 > num2) ? 
                    ((num1 > num3) ? num1 : num3) : 
                    ((num2 > num3) ? num2 : num3);
    
    // Display the result
    cout << "The largest number is: " << largest << endl;
    
    return 0;
}

Output

C++
Enter three numbers: 5 7 3
The largest number is: 7

Explanation:

  1. Input Handling:
    • The program prompts the user to enter three integers.
    • It reads the input numbers num1, num2, and num3.
  2. Ternary Operator:
    • The expression (num1 > num2) ? ((num1 > num3) ? num1 : num3) : ((num2 > num3) ? num2 : num3) is used to determine the largest number.
    • First, the condition num1 > num2 is evaluated.
      • If true, it evaluates (num1 > num3) ? num1 : num3 to find the larger of num1 and num3.
      • If false, it evaluates (num2 > num3) ? num2 : num3 to find the larger of num2 and num3.
    • The final result is stored in the variable largest.
  3. Output:
    • The program prints the largest number.

Example Runs

Example 1: Finding the Largest Number Among 8, 3, and 5

C++
Enter three numbers: 8 3 5
The largest number is: 8

Explanation:

  • num1 is 8, num2 is 3, and num3 is 5.
  • The ternary operator evaluates (8 > 3) ? ((8 > 5) ? 8 : 5) : ((3 > 5) ? 3 : 5).
  • Since 8 > 3 is true and 8 > 5 is true, the result is 8.

Example 2: Finding the Largest Number Among 4, 9, and 7

C++
Enter three numbers: 4 9 7
The largest number is: 9

Explanation:

  • num1 is 4, num2 is 9, and num3 is 7.
  • The ternary operator evaluates (4 > 9) ? ((4 > 7) ? 4 : 7) : ((9 > 7) ? 9 : 7).
  • Since 4 > 9 is false and 9 > 7 is true, the result is 9.

Conclusion

Using the ternary operator to find the largest of three numbers in C++ offers a concise and efficient approach. The ternary operator’s ability to handle conditional logic inline makes it a powerful tool for simplifying code. This article demonstrated how to utilize the ternary operator to determine the largest of three numbers, providing a clear explanation and practical examples. Understanding and using the ternary operator can enhance your C++ programming skills, enabling you to write more efficient and readable code.