Related Articles

Related Articles

Last digit of Product of two Large or Small numbers (a * b)
  • Difficulty Level : Medium
  • Last Updated : 17 Apr, 2019

Given two large or small numbers, the task is to find the last digit of the product of these two numbers.

Examples:

Input: a = 1234567891233789, b = 567891233156156
Output: 4

Input: a = 123, b = 456
Output: 8

Approach: In general, the last digit of multiplication of 2 numbers a and b is the last digit of the product of the LSB of these two numbers.
For example: For a = 123 and b = 456,
the last digit of a*b
= Last digit of ((LSB of a)*(LSB of b))
= Last digit of ((3)*(6))
= Last digit of (18)
= 8

Below is the implementation of the above approach:

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ implementation of the above approach
  
#include <bits/stdc++.h>
using namespace std;
  
// Fthe unction to print last digit of product a * b
void lastDigit(string a, string b)
{
    int lastDig = (a[a.length() - 1] - '0')
                  * (b[b.length() - 1] - '0');
    cout << lastDig % 10;
}
  
// Driver code
int main()
{
    string a = "1234567891233", b = "1234567891233156";
    lastDigit(a, b);
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java implementation of the above approach
  
class Solution {
  
    // Function to print last digit of product a * b
    public static void lastDigit(String a, String b)
    {
        int lastDig = (a.charAt(a.length() - 1) - '0')
                      * (b.charAt(b.length() - 1) - '0');
        System.out.println(lastDig % 10);
    }
  
    // Driver code
    public static void main(String[] args)
    {
        String a = "1234567891233", b = "1234567891233156";
        lastDigit(a, b);
    }
}

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python3 implementation of the above approach
  
# Function to print the last digit
# of product a * b
def lastDigit(a, b):
    lastDig = ((int(a[len(a) - 1]) - int('0')) * 
               (int(b[len(b) - 1]) - int('0')))
    print(lastDig % 10)
  
# Driver code
if __name__ == '__main__':
    a, b = "1234567891233", "1234567891233156"
    lastDigit(a, b)
  
# This code has been contributed
# by 29AjayKumar

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// CSharp implementation of the above approach
  
using System;
class Solution {
  
    // Function to print last digit of product a * b
    public static void lastDigit(String a, String b)
    {
        int lastDig = (a[a.Length - 1] - '0')
                      * (b[b.Length - 1] - '0');
  
        Console.Write(lastDig % 10);
    }
  
    // Driver code
    public static void Main()
    {
        String a = "1234567891233", b = "1234567891233156";
        lastDigit(a, b);
    }
}

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP implementation of the above approach
  
// Function to print last digit of product a * b
function lastDigit($a, $b)
{
    $lastDig = (ord($a[strlen($a) - 1]) - 48) * 
               (ord($b[strlen($b) - 1]) - 48);
    echo $lastDig % 10;
}
  
// Driver code
$a = "1234567891233";
$b = "1234567891233156";
lastDigit($a, $b);
  
// This code is contributed by ihritik
?>

chevron_right


Output:

8

Time Complexity: O(1).

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.




My Personal Notes arrow_drop_up
Recommended Articles
Page :