Sunday, September 22, 2024
Google search engine
HomeData Modelling & AIFind first and last digits of a number

Find first and last digits of a number

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)

Feeling lost in the world of random DSA topics, wasting time without progress? It’s time for a change! Join our DSA course, where we’ll guide you on an exciting journey to master DSA efficiently and on schedule.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!

Dominic Rubhabha-Wardslaus
Dominic Rubhabha-Wardslaushttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Recent Comments