Open In App

Find first and last digits of a number

Last Updated : 13 Dec, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

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

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

Input : 98562
Output : First digit: 9
         last digit : 2

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 
To find first digit of a number is little expensive than last digit. To find first digit of a number we divide the given number by 10 until number is greater 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


Python3




# 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


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)


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>


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.


Python3




# 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.


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
?>


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>


Output

9 2

Time Complexity: O(log(log10(n))
Auxiliary Space: O(1)

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

Approach 3: Using string operation 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);
    }
}


Python3




# 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(n)
Auxiliary Space: O(n)



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads