Find first and last digits of a number

Last Updated : 23 May, 2026

Given a number to find the first and last digit of a number.

Examples: 

Input : 12345
Output : First digit: 1
last digit : 5

Try It Yourself
redirect icon

To find last digit of a number, we use modulo operator %. When modulo divided by 10 returns its last digit. Suppose if n = 1234  then last Digit = n % 10 => 4.

Finding first digit of a number is little expensive than last digit as we have divide the given number by 10 until it becomes less than 10. At the end we are left with the first digit.

Approach 1 (With loop):

C++
// Program to find first and last
// digits of a number
#include <bits/stdc++.h>
using namespace std;

// Find the first digit
int firstDigit(int n)
{
    // Remove last digit from number
    // till only one digit is left
    while (n >= 10) 
        n /= 10;
    
    // return the first digit
    return n;
}

// Find the last digit
int lastDigit(int n)
{
    // return the last digit
    return (n % 10);
}

// Driver program
int main()
{
    int n = 98562;
    cout << firstDigit(n) << " " 
        << lastDigit(n) << endl;
    return 0;
}
Java
// Java Program to find first and last
// digits of a number
import java.util.*;
import java.lang.*;

public class GfG{
    
    // Find the first digit
    public static int firstDigit(int n)
    {
        // Remove last digit from number
        // till only one digit is left
        while (n >= 10) 
            n /= 10;
    
        // return the first digit
        return n;
    }

    // Find the last digit
    public static int lastDigit(int n)
    {
        // return the last digit
        return (n % 10);
    }
    
    // driver function
    public static void main(String argc[])
    {
        int n = 98562;
        System.out.println(firstDigit(n) + " "
        + lastDigit(n));
    }
}

// This code is contributed by Sagar Shukla
Python
# Python3 program to find first and 
# last digits of a number

# Find the first digit
def firstDigit(n) :

    # Remove last digit from number
    # till only one digit is left
    while n >= 10: 
        n = n / 10;
    
    # return the first digit
    return int(n)

# Find the last digit
def lastDigit(n) :

    # return the last digit
    return (n % 10)

# Driver Code
n = 98562;
print(firstDigit(n), end = " ") 
print(lastDigit(n))

# This code is contributed by rishabh_jain
C#
// C# Program to find first and last
// digits of a number
using System;

public class GfG{
    
    // Find the first digit
    public static int firstDigit(int n)
    {
        // Remove last digit from number
        // till only one digit is left
        while (n >= 10) 
            n /= 10;
    
        // return the first digit
        return n;
    }

    // Find the last digit
    public static int lastDigit(int n)
    {
        // return the last digit
        return (n % 10);
    }
    
    // driver function
    public static void Main()
    {
        int n = 98562;
        Console.WriteLine(firstDigit(n) + " "
        + lastDigit(n));
    }
}

// This code is contributed by vt_m
JavaScript
<script>
// javascript Program to find first and last
// digits of a number

    // Find the first digit
    function firstDigit(n)
    {
        // Remove last digit from number
        // till only one digit is left
        while (n >= 10) 
            n /= 10;
      
        // return the first digit
        return Math.floor(n);
    }
  
    // Find the last digit
    function lastDigit(n)
    {
        // return the last digit
        return Math.floor(n % 10);
    }

// Driver code

         let n = 98562;
        document.write(firstDigit(n) + " "
        + lastDigit(n));
 
 // This code is contributed by sanjoy_62.
</script>
PHP
<?php
// PHP Program to find first 
// and last digits of a number

// Find the first digit
function firstDigit($n)
{
    // Remove last digit from number
    // till only one digit is left
    while ($n >= 10) 
        $n /= 10;
    
    // return the first digit
    return (int)$n;
}

// Find the last digit
function lastDigit($n)
{
    // return the last digit
    return ((int)$n % 10);
}

// Driver Code
$n = 98562;
echo firstDigit($n) . " " .
     lastDigit($n) . "\n";

// This code is contributed 
// by Akanksha Rai(Abby_akku)

Output
9 2

Time Complexity: O(log10n)
Auxiliary Space: O(1) 

Approach 2 (Without loop) 

C++
// Program to find first and last 
// digits of a number
#include <bits/stdc++.h>
using namespace std;

// Find the first digit
int firstDigit(int n)
{
    // Find total number of digits - 1
    int digits = (int)log10(n);

    // Find first digit
    n = (int)(n / pow(10, digits));

    // Return first digit
    return n;
}

// Find the last digit
int lastDigit(int n)
{
    // return the last digit
    return (n % 10);
}

// Driver program
int main()
{
    int n = 98562;
    cout << firstDigit(n) << " " 
         << lastDigit(n) << endl;
    return 0;
}
Java
// Java program to find first and 
// last  digits of a number
import java.math.*;

class GFG {
    
    // Find the first digit
    static int firstDigit(int n)
    {
        // Find total number of digits - 1
        int digits = (int)(Math.log10(n));
    
        // Find first digit
        n = (int)(n / (int)(Math.pow(10, digits)));
    
        // Return first digit
        return n;
    }
    
    // Find the last digit
    static int lastDigit(int n)
    {
        // return the last digit
        return (n % 10);
    }
    
    // Driver program
    public static void main(String args[])
    {
        int n = 98562;
        System.out.println(firstDigit(n) +
                           " " + lastDigit(n));
    }
}


// This code is contributed by Nikita Tiwari.
Python
# Python3 program to find first  
# and last digits of a number
import math

# Find the first digit
def firstDigit(n) :
    
    # Find total number of digits - 1
    digits = (int)(math.log10(n))

    # Find first digit
    n = (int)(n / pow(10, digits))

    # Return first digit
    return n;

# Find the last digit
def lastDigit(n) :
    
    # return the last digit
    return (n % 10)

# Driver Code
n = 98562;
print(firstDigit(n), end = " ") 
print(lastDigit(n))

# This code is contributed by rishabh_jain
C#
// C# program to find first and 
// last digits of a number
using System;

class GFG {
    
    // Find the first digit
    static int firstDigit(int n)
    {
        // Find total number of digits - 1
        int digits = (int)(Math.Log10(n));
    
        // Find first digit
        n = (int)(n / (int)(Math.Pow(10, digits)));
    
        // Return first digit
        return n;
    }
    
    // Find the last digit
    static int lastDigit(int n)
    {
        // return the last digit
        return (n % 10);
    }
    
    // Driver program
    public static void Main()
    {
        int n = 98562;
        Console.WriteLine(firstDigit(n) +
                        " " + lastDigit(n));
    }
}


// This code is contributed by vt_m.
JavaScript
<script>

// JavaScript program to find first  
// and last digits of a number

// Find the first digit
function firstDigit(n)
{
    
    // Find total number of digits - 1
    let digits = Math.floor(Math.log(n)/Math.log(10))

    // Find first digit
    n = Math.floor(n / Math.pow(10, digits))

    // Return first digit
    return n;
}

// Find the last digit
function lastDigit(n){
    
    // return the last digit
    return (n % 10)
}

// Driver Code
let n = 98562;
document.write(firstDigit(n)," ") 
document.write(lastDigit(n),"</br>")

// This code is contributed by shinjanpatra

</script>
PHP
<?php
// Program to find first and last 
// digits of a number 

// Find the first digit 
function firstDigit($n) 
{ 
    // Find total number of digits - 1 
    $digits = (int)log10($n); 

    // Find first digit 
    $n = (int)($n / pow(10, $digits)); 

    // Return first digit 
    return $n; 
} 

// Find the last digit 
function lastDigit($n) 
{ 
    // return the last digit 
    return ($n % 10); 
} 

// Driver Code 
$n = 98562; 
echo firstDigit($n) , " ",
     lastDigit($n), "\n"; 

// This code is contributed by ajit
?>

Output
9 2

Time Complexity: O(1)
Auxiliary Space: O(1)

Important note: log10() is a mathematical function present in the <cmath> header file. It returns log base 10 value of the passed parameter to log10() function. 

Approach 3: Using string operation std::to_string

First converting number to string and then first char of string and last character of string - '0' is our ans.

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

int main() {

    int n = 34356;
      string s = to_string(n);
      int first_digit = s.front() - '0';
      int last_digit = s.back() - '0';
      cout<<"First digit of "<<n<<" is "<<first_digit<<endl;
      cout<<"Last digit of "<<n<<" is "<<last_digit<<endl;
}
Java
import java.util.*;

public class Main {
    public static void main(String[] args) {
        int n = 34356;
        String s = Integer.toString(n);
        int first_digit = s.charAt(0) - '0';
        int last_digit = s.charAt(s.length() - 1) - '0';
        System.out.println("First digit of " + n + " is " + first_digit);
        System.out.println("Last digit of " + n + " is " + last_digit);
    }
}
Python
# Python program to extract first and last digits of a number
# including comments and no empty lines
# take an integer input
n = 34356

# convert the integer to string
s = str(n)

# extract first and last digits from the string
first_digit = int(s[0])
last_digit = int(s[-1])

# print the results
print("First digit of", n, "is", first_digit)
print("Last digit of", n, "is", last_digit)
C#
using System;

public class GFG{

    static public void Main (){
        int n = 34356;
        string s = n.ToString();
        int first_digit = s[0] - '0';
        int last_digit = s[s.Length - 1] - '0';
        Console.WriteLine("First digit of {0} is {1}", n, first_digit);
        Console.WriteLine("Last digit of {0} is {1}", n, last_digit);
    }
}
JavaScript
let n = 34356;

let s = n.toString();
let first_digit = parseInt(s.charAt(0));
let last_digit = parseInt(s.charAt(s.length-1));
console.log("First digit of " + n + " is " + first_digit);
console.log("Last digit of " + n + " is " + last_digit);

Output
First digit of 34356 is 3
Last digit of 34356 is 6

Time Complexity: O(d)
Auxiliary Space: O(d)

Comment