- C++ Programming Examples
- C++ Programming Examples
- C++ Hello World
- C++ Get Input
- C++ Print Integer
- C++ Add Two Numbers
- C++ Add Sub Mul Div
- C++ Add Digits
- C++ Find Average Perc
- C++ Find Arithmetic Mean
- C++ Sum of n Natural Numbers
- C++ Sum of n Numbers
- C++ Area Perimeter of Square
- C++ Area Perimeter of Rectangle
- C++ Area Perimeter of Triangle
- C++ Area Circum of Circle
- C++ Find Simple Interest
- C++ Fahrenheit to Celsius
- C++ Celsius to Fahrenheit
- C++ Print Prime Numbers
- C++ Reverse a Number
- C++ Swap Two Numbers
- C++ Print Multiplication Table
- C++ Find Factorial of Number
- C++ Find Factors of Number
- C++ Find HCF & LCM
- C++ Make Calculator
- C++ Count Digits in Number
- C++ Sum of First & Last Digit
- C++ Product of Digits of Number
- C++ Sum of Squares of Digits
- C++ Interchange Digits of Number
- C++ if else Programs
- C++ Check Even or Odd
- C++ Check Prime or Not
- C++ Check Alphabet or Not
- C++ Check Vowel or Not
- C++ Check Leap Year or Not
- Check Reverse equal Original
- C++ Check Perfect Number
- C++ Check Palindrome or Not
- C++ Check Armstrong or Not
- C++ Divisibility Test
- C++ Find Wage of Labor
- C++ Find Discounted Price
- C++ Find Shipping Charge
- C++ Find Telephone Bills
- C++ Calculate Student Grade
- C++ Largest of Two Numbers
- C++ Largest of Three Numbers
- C++ Number Conversion
- C++ Decimal to Binary
- C++ Decimal to Octal
- C++ Decimal to Hexadecimal
- C++ Binary to Decimal
- C++ Binary to Octal
- C++ Binary to Hexadecimal
- C++ Octal to Decimal
- C++ Octal to Binary
- C++ Octal to Hexadecimal
- C++ Hexadecimal to Decimal
- C++ Hexadecimal to Binary
- C++ Hexadecimal to Octal
- C++ Pattern Programs
- C++ Pattern Programs
- C++ Print Diamond Pattern
- C++ Print Floyd's Triangle
- C++ Print Pascal's Triangle
- C++ Array Programs
- C++ 1D Array Program
- C++ Linear Search
- C++ Binary Search
- Find Largest Element in Array
- Find Smallest Element in Array
- Find Second Largest Element
- Find Second Smallest Element
- C++ Sum of All Elements
- C++ Multiply All Elements
- C++ Element on Even Position
- C++ Element on Odd Position
- C++ Print Even Numbers in Array
- C++ Print Odd Numbers in Array
- C++ Count Even/Odd Numbers
- C++ Sum of Even/Odd Numbers
- C++ Count Positive Negative Zero
- C++ Reverse an Array
- C++ Insert Element in Array
- C++ Delete Element from Array
- C++ Merge two Arrays
- C++ Bubble Sort
- C++ Selection Sort
- C++ Insertion Sort
- C++ Common Elements
- C++ 2D Array Programs
- C++ Add Two Matrices
- C++ Subtract Two Matrices
- C++ Transpose Matrix
- C++ Multiply Two Matrices
- C++ 3D Array Programs
- C++ String Programs
- C++ Print String
- C++ Find Length of String
- C++ Compare Two Strings
- C++ Copy String
- C++ Concatenate String
- C++ Reverse a String
- C++ Delete Vowels from String
- C++ Delete Word from String
- C++ Count Character in String
- C++ Count Word in String
- C++ Frequency of Word
- C++ Remove Spaces from String
- C++ Sort a String
- C++ Uppercase to Lowercase
- C++ Lowercase to Uppercase
- C++ Swap Two Strings
- C++ Check Anagram or Not
- C++ Capitalize All Words in String
- C++ Capitalize Specific Character
- C++ Get Numbers from String
- C++ File Programs
- C++ Read a File
- C++ Write Content to File
- C++ Append Data in File
- C++ Read & Display File
- C++ Copy a File
- C++ Merge Two Files
- Count Characters, Words in File
- C++ Capitalize All Words in File
- C++ List Files in Directory
- C++ Delete a File
- C++ Encrypt & Decrypt a File
- C++ Misc Programs
- C++ Print ASCII Value
- C++ Add Binary Numbers
- C++ Generate Random Numbers
- C++ Print Smiling Face
- C++ Days into Years, Months
- Add Two Numbers using Pointer
- C++ Print Fibonacci Series
- Generate Armstrong Numbers
- C++ Find nCr and nPr
- C++ Get IP Address
- C++ Print Date/Time
- C++ Shutdown, Restart Computer
- C++ Programming Tutorial
- C++ Tutorial
- C++ Programming Test
- C++ Programming Test
- Give Online Test
- All Test List

# C++ Program to Find Largest of Three Numbers

In this article, you will learn and get code to find and print largest of entered three numbers by user at run-time in C++. The program is created in following ways:

- Find largest of three numbers without function
- Find largest of three numbers using user-defined Function

Both program uses *if-else*, to find and print largest or biggest among any three numbers entered by user.

## Find Largest of Three Numbers in C++

To find the largest number among three numbers in C++ programming, you have to ask
from user to enter the three numbers. Now use *if-else* ladder to find out the largest among three as shown in the
program given below:

The question is, **write a program in C++ that finds largest of three numbers.** Here is its answer:

#include<iostream> using namespace std; int main() { int numOne, numTwo, numThree, larg; cout<<"Enter the Three Numbers: "; cin>>numOne>>numTwo>>numThree; if(numOne>numTwo) { if(numTwo>numThree) larg = numOne; else { if(numThree>numOne) larg = numThree; else larg = numOne; } } else { if(numTwo>numThree) larg = numTwo; else larg = numThree; } cout<<"\nLargest Number = "<<larg; cout<<endl; return 0; }

This program was build and run under *Code::Blocks* IDE. Here is its sample run:

Now supply any three numbers as input say **1, 2, 3**. Here the third number is largest and second number
is second largest. Press `ENTER`

key to print the largest among these three numbers as shown in the
output given below:

Here is another sample run with user input **1, 3, 2**. Here the second number is largest and third number is
second largest:

Here is the one more sample run with user input, **3, 1, 2**:

#### Main Logic of Previous Program

The main logic behind the code is:

- Initially checks whether the first number is greater than second:
- If first number is greater than second, then checks whether second number
is greater than third:
- If it is true. Then first number is greater than second and second number is greater than third
- So the first number is the largest number

- And if second number is not greater than third, means that, the third number is greater than second
- Because third number is greater than second, so checks whether the third
number is also greater than first:
- If it is true. Then third number is greater than first and second both
- So the third number is the largest number
- And if third number is not greater than first, means that, the first number is greater than third
- Because first number is greater than third and second both
- So first number is the largest number

- If first number is greater than second, then checks whether second number
is greater than third:
- If first number does not greater than second, then second number is greater
than first:
- Because second number is greater than first, therefore checked whether
the second number is also greater than third:
- If it is true. Then second number is greater than first and third both
- So second number is the largest
- And if second number is not greater than third, means that, third number is greater than second
- Because third number is greater than second, and second number is greater than first
- So third number is the largest

- Because second number is greater than first, therefore checked whether
the second number is also greater than third:

#### Previous Program Explained with Dry Run

The dry run of above program with user input **2, 1, 3** goes like:

- When user enters
**2, 1, 3**in same pattern, then 2 gets stored in**numOne**, 1 gets stored in**numTwo**, and 3 gets stored in**numThree**. That is,**numOne=2**,**numTwo=1**, and**numThree=3** - Now the condition,
**numOne>numTwo**or**2>1**evaluates to be true, threfore program flow goes inside the**if**block - Now the condition,
**numTwo>numThree**or**1>3**evaluates to be false, therefore program flow does not goes inside**if**'s body, rather it goes to its**else**'s part - And there, the condition
**numThree>numOne**or**3>2**evaluates to be true, therefore program flow goes inside the**if**'s body - And the value of
**numThree**gets initialized to**larg** - Because the condition evaluates to be true, therefore program flow skip
**else**'s part - And for outermost
**if-else**, because the condition of**if**evaluates to be true, therefore again in this case also,**else**'s part gets skipped - So program flow goes to the statement that prints the value of
**larg**as output - That will print the largest among entered three numbers

## Find Largest of three Numbers using Function

This program does the same job as of previous program. But internally this program uses a different approach
to do the task. That is, this program is created using a user defined function, **findLargest()**

The function, **findLargest()** takes three numbers as its arguments, and returns the largest among its
three argument. So the largest number gets returned by this function and initialized to **larg** inside the
**main()** function. Therefore just print the value of **larg**

#include<iostream> using namespace std; int findLargest(int, int, int); int main() { int numOne, numTwo, numThree, larg; cout<<"Enter the Three Numbers: "; cin>>numOne>>numTwo>>numThree; larg = findLargest(numOne, numTwo, numThree); cout<<"\nLargest Number = "<<larg; cout<<endl; return 0; } int findLargest(int nOne, int nTwo, int nThree) { if(nOne>nTwo) { if(nTwo>nThree) return nOne; else { if(nThree>nOne) return nThree; else return nOne; } } else { if(nTwo>nThree) return nTwo; else return nThree; } }

This program produces the same output as of previous program.

#### Same Program in Other Languages

- C Find Largest of three Numbers
- Java Find Largest of three Numbers
- Python Find Largest of three Numbers

« Previous Program Next Program »