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 = 567891233156156Output:4Input:a = 123, b = 456Output: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++

`// 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*

*filter_none*

## Java

`// 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*

*filter_none*

## Python3

`# 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*

*filter_none*

## C#

`// 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*

*filter_none*

## PHP

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

*filter_none*

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