Open In App

# Find the remainder when First digit of a number is divided by its Last digit

Given a number N, find the remainder when the first digit of N is divided by its last digit.
Examples:

```Input: N = 1234
Output: 1
First digit = 1
Last digit = 4
Remainder = 1 % 4 = 1

Input: N = 5223
Output: 2
First digit = 5
Last digit = 3
Remainder = 5 % 3 = 2```

Approach: Find the first digit and the last digit of the number. Find then the remainder when the first digit is divided by the last digit.
Below is the implementation of the above approach:

## C++

 `// C++ program to find the remainder``// when the First digit of a number``// is divided by its Last digit` `#include ``using` `namespace` `std;` `// Function to find the remainder``void` `findRemainder(``int` `n)``{``    ``// Get the last digit``    ``int` `l = n % 10;` `    ``// Get the first digit``    ``while` `(n >= 10)``        ``n /= 10;``    ``int` `f = n;` `    ``// Compute the remainder``    ``int` `remainder = f % l;` `    ``cout << remainder << endl;``}` `// Driver code``int` `main()``{` `    ``int` `n = 5223;` `    ``findRemainder(n);` `    ``return` `0;``}`

## Java

 `// Java program to find the remainder``// when the First digit of a number``// is divided by its Last digit``import` `java.io.*;``class` `GFG``{``    ` `// Function to find the remainder``static` `void` `findRemainder(``int` `n)``{``    ``// Get the last digit``    ``int` `l = n % ``10``;` `    ``// Get the first digit``    ``while` `(n >= ``10``)``        ``n /= ``10``;``    ``int` `f = n;` `    ``// Compute the remainder``    ``int` `remainder = f % l;` `    ``System.out.println(remainder);``}` `// Driver code``public` `static` `void` `main(String[] args)``{``    ``int` `n = ``5223``;``    ``findRemainder(n);``}``}` `// This code is contributed by Code_Mech`

## Python3

 `# Python3 program to find the remainder``# when the First digit of a number``# is divided by its Last digit` `# Function to find the remainder``def` `findRemainder(n):``    ` `    ``# Get the last digit``    ``l ``=` `n ``%` `10`` ` `    ``# Get the first digit``    ``while` `(n >``=` `10``):``        ``n ``/``/``=` `10``    ``f ``=` `n` `    ``# Compute the remainder``    ``remainder ``=` `f ``%` `l` `    ``print``(remainder)` `# Driver code``n ``=` `5223` `findRemainder(n)` `# This code is contributed by Mohit Kumar`

## C#

 `// C# program to find the remainder``// when the First digit of a number``// is divided by its Last digit``using` `System;` `class` `GFG``{``    ` `// Function to find the remainder``static` `void` `findRemainder(``int` `n)``{``    ``// Get the last digit``    ``int` `l = n % 10;` `    ``// Get the first digit``    ``while` `(n >= 10)``        ``n /= 10;``    ``int` `f = n;` `    ``// Compute the remainder``    ``int` `remainder = f % l;` `    ``Console.WriteLine(remainder);``}` `// Driver code``public` `static` `void` `Main()``{``    ``int` `n = 5223;``    ``findRemainder(n);``}``}` `// This code is contributed by Code_Mech`

## Javascript

 ``

Output:

`2`

Time Complexity: O(L ) where L is length of number in decimal representation
Auxiliary Space: O(1)

Approach:

1. Convert the input number to a string so that we can easily access its first and last digits.
2. Extract the first and last digits of the number by accessing the first and last characters of the string.
3. Convert the first digit to an integer using the ASCII code of ‘0’ and the subtraction operator.
4. Convert the last digit to an integer using the same method.
5. Find the remainder when the first digit is divided by the last digit using the modulo operator (%).
6. Output the remainder.

Implementation of the above approach:

## C++

 `#include ``#include ` `using` `namespace` `std;` `// Function to find the remainder``void` `findRemainder(``int` `n)``{``    ``string s = to_string(n);``    ``char` `first = s[0];``    ``char` `last = s[s.length()-1];` `    ``int` `remainder = (first - ``'0'``) % (last - ``'0'``);` `    ``cout << remainder << endl;``}`` ` `// Driver code``int` `main()``{``    ``int` `n = 5223;` `    ``findRemainder(n);` `    ``return` `0;``}`

## Java

 `import` `java.util.*;` `public` `class` `Main {` `    ``// Function to find the remainder``    ``static` `void` `findRemainder(``int` `n) {``        ``String s = Integer.toString(n);``        ``char` `first = s.charAt(``0``);``        ``char` `last = s.charAt(s.length()-``1``);` `        ``int` `remainder = (first - ``'0'``) % (last - ``'0'``);` `        ``System.out.println(remainder);``    ``}` `    ``// Driver code``    ``public` `static` `void` `main(String[] args) {``        ``int` `n = ``5223``;` `        ``findRemainder(n);``    ``}``}``// This code is contributed by Prajwal Kandekar`

## Python3

 `def` `find_remainder(n):``    ``s ``=` `str``(n)``    ``first ``=` `s[``0``]``    ``last ``=` `s[``-``1``]` `    ``remainder ``=` `int``(first) ``%` `int``(last)` `    ``print``(remainder)` `# Driver code``n ``=` `5223``find_remainder(n)` `# This code is contributed by Prajwal Kandekar`

## C#

 `using` `System;` `namespace` `RemainderFinder {``class` `Program {``    ``// Function to find the remainder``    ``static` `void` `FindRemainder(``int` `n)``    ``{``        ``string` `s = n.ToString();``        ``char` `first = s[0];``        ``char` `last = s[s.Length - 1];``        ``int` `remainder = (first - ``'0'``) % (last - ``'0'``);` `        ``Console.WriteLine(remainder);``    ``}` `    ``// Driver code``    ``static` `void` `Main(``string``[] args)``    ``{``        ``int` `n = 5223;` `        ``FindRemainder(n);` `        ``Console.ReadLine();``    ``}``}``}``// This code is contributed by sarojmcy2e`

## Javascript

 `// Function to find the remainder``function` `findRemainder(n) {``    ``let s = n.toString();``    ``let first = s.charAt(0);``    ``let last = s.charAt(s.length-1);` `    ``let remainder = parseInt(first) % parseInt(last);` `    ``console.log(remainder);``}` `let n = 5223;``findRemainder(n);``// This code is contributed by Prajwal Kandekar`

Output

`2`

Time Complexity: O(1)

Space Complexity: O(1)