Posted on by Kalkicode
Code Mathematics

Check that if large number is divisible by 2

The problem at hand revolves around determining whether a large number is divisible by 2 or not. Divisibility by 2 is a fundamental mathematical concept that is frequently used in programming to optimize various algorithms and processes. When a number is divisible by 2, it means it can be evenly divided by 2 without leaving a remainder. In the context of computer programming, this often involves analyzing the last digit of a number to determine its divisibility by 2.

Problem Statement and Description

Given a large number represented as a string, we want to determine if the number is divisible by 2. The approach to solving this problem involves checking the last digit of the number and examining whether it is an even digit (0, 2, 4, 6, or 8). If the last digit is even, then the number is divisible by 2; otherwise, it's not.

Example

Let's consider the number "123456". The last digit is 6, which is an even number. Therefore, the number 123456 is divisible by 2.

Idea to Solve the Problem

1. Convert the given number to a string.
2. Get the last digit of the string representation of the number.
3. Check if the last digit is one of the even digits (0, 2, 4, 6, 8).

Test Cases

1. Input

"122938934834534345345343940"
Output
Divisible by 2
Explanation
The last digit is 0, which is even.

2. Input

"2342348234"
Output
Divisible by 2
Explanation
The last digit is 4, which is even.

3. Input

"2398231234233251"
Output
Not divisible by 2
Explanation
The last digit is 1, which is not even.

4. Input

"33282949823493"
Output
Not divisible by 2
Explanation
The last digit is 3, which is not even.

Pseudocode

``````function isDivisibleBy2(num):
last_digit = num.charAt(num.length - 1)
if last_digit is '0' or '2' or '4' or '6' or '8':
return true
else:
return false``````

Algorithm Explanation

1. Start by obtaining the last digit of the given number.
2. Check if the last digit is any of the even digits ('0', '2', '4', '6', '8').
3. If the condition is satisfied, return true, indicating that the number is divisible by 2. Otherwise, return false.

Program Solution

``````// Java program for
// Check that if large number is divisible by 2
public class Divisibility
{
public void isDivisibleBy2(String num)
{
// Condition
// ➀ Last digit should be a Even number
boolean result = false;
int n = num.length();
if (n == 1 && num.charAt(0) == '0')
{
// Given number is zero
result = true;
}
else if (n > 0)
{
if (num.charAt(n - 1) == '0'
|| num.charAt(n - 1) == '2'
|| num.charAt(n - 1) == '4'
|| num.charAt(n - 1) == '6'
|| num.charAt(n - 1) == '8')
{
result = true;
}
}
if (result == true)
{
System.out.print(" Given number (" +
num + ") is divisible by 2\n");
}
else
{
System.out.print(" Given number (" +
num + ") is not divisible by 2\n");
}
}
public static void main(String[] args)
{
// Test
}
}``````

Output

`````` Given number (122938934834534345345343940) is divisible by 2
Given number (2342348234) is divisible by 2
Given number (2398231234233251) is not divisible by 2
Given number (33282949823493) is not divisible by 2``````
``````// Include header file
#include <iostream>
#include <string>
using namespace std;
// C++ program for
// Check that if large number is divisible by 2
class Divisibility
{
public: void isDivisibleBy2(string num)
{
// Condition
// ➀ Last digit should be a Even number
bool result = false;
int n = num.length();
if (n == 1 && num[0] == '0')
{
// Given number is zero
result = true;
}
else if (n > 0)
{
if (num[n - 1] == '0' ||
num[n - 1] == '2' ||
num[n - 1] == '4' ||
num[n - 1] == '6' ||
num[n - 1] == '8')
{
result = true;
}
}
if (result == true)
{
cout << " Given number (" << num << ") is divisible by 2\n";
}
else
{
cout << " Given number (" << num << ") is not divisible by 2\n";
}
}
};
int main()
{
// Test
return 0;
}``````

Output

`````` Given number (122938934834534345345343940) is divisible by 2
Given number (2342348234) is divisible by 2
Given number (2398231234233251) is not divisible by 2
Given number (33282949823493) is not divisible by 2``````
``````// Include namespace system
using System;
// Csharp program for
// Check that if large number is divisible by 2
public class Divisibility
{
public void isDivisibleBy2(String num)
{
// Condition
// ➀ Last digit should be a Even number
Boolean result = false;
int n = num.Length;
if (n == 1 && num[0] == '0')
{
// Given number is zero
result = true;
}
else if (n > 0)
{
if (num[n - 1] == '0' || num[n - 1] == '2' || num[n - 1] == '4' || num[n - 1] == '6' || num[n - 1] == '8')
{
result = true;
}
}
if (result == true)
{
Console.Write(" Given number (" + num + ") is divisible by 2\n");
}
else
{
Console.Write(" Given number (" + num + ") is not divisible by 2\n");
}
}
public static void Main(String[] args)
{
// Test
}
}``````

Output

`````` Given number (122938934834534345345343940) is divisible by 2
Given number (2342348234) is divisible by 2
Given number (2398231234233251) is not divisible by 2
Given number (33282949823493) is not divisible by 2``````
``````package main

import "fmt"
// Go program for
// Check that if large number is divisible by 2

func isDivisibleBy2(num string) {
// Condition
// ➀ Last digit should be a Even number
var result bool = false
var n int = len(num)
if n == 1 && num[0] == '0' {
// Given number is zero
result = true
} else if n > 0 {
if num[n - 1] == '0' ||
num[n - 1] == '2' ||
num[n - 1] == '4' ||
num[n - 1] == '6' ||
num[n - 1] == '8' {
result = true
}
}
if result == true {
fmt.Println(" Given number (", num, ") is divisible by 2")
} else {
fmt.Println(" Given number (", num, ") is not divisible by 2")
}
}
func main() {

// Test
isDivisibleBy2("122938934834534345345343940")
isDivisibleBy2("2342348234")
isDivisibleBy2("2398231234233251")
isDivisibleBy2("33282949823493")
}``````

Output

`````` Given number (122938934834534345345343940) is divisible by 2
Given number (2342348234) is divisible by 2
Given number (2398231234233251) is not divisible by 2
Given number (33282949823493) is not divisible by 2``````
``````<?php
// Php program for
// Check that if large number is divisible by 2
class Divisibility
{
public	function isDivisibleBy2(\$num)
{
// Condition
// ➀ Last digit should be a Even number
\$result = false;
\$n = strlen(\$num);
if (\$n == 1 && \$num[0] == '0')
{
// Given number is zero
\$result = true;
}
else if (\$n > 0)
{
if (\$num[\$n - 1] == '0' ||
\$num[\$n - 1] == '2' ||
\$num[\$n - 1] == '4' ||
\$num[\$n - 1] == '6' ||
\$num[\$n - 1] == '8')
{
\$result = true;
}
}
if (\$result == true)
{
echo(" Given number (".\$num.
") is divisible by 2\n");
}
else
{
echo(" Given number (".\$num.
") is not divisible by 2\n");
}
}
}

function main()
{
// Test
}
main();``````

Output

`````` Given number (122938934834534345345343940) is divisible by 2
Given number (2342348234) is divisible by 2
Given number (2398231234233251) is not divisible by 2
Given number (33282949823493) is not divisible by 2``````
``````// Node JS program for
// Check that if large number is divisible by 2
class Divisibility
{
isDivisibleBy2(num)
{
// Condition
// ➀ Last digit should be a Even number
var result = false;
var n = num.length;
if (n == 1 && num.charAt(0) == '0')
{
// Given number is zero
result = true;
}
else if (n > 0)
{
if (num.charAt(n - 1) == '0' ||
num.charAt(n - 1) == '2' ||
num.charAt(n - 1) == '4' ||
num.charAt(n - 1) == '6' ||
num.charAt(n - 1) == '8')
{
result = true;
}
}
if (result == true)
{
console.log(" Given number (" + num + ") is divisible by 2");
}
else
{
console.log(" Given number (" + num + ") is not divisible by 2");
}
}
}

function main()
{
// Test
}
main();``````

Output

`````` Given number (122938934834534345345343940) is divisible by 2
Given number (2342348234) is divisible by 2
Given number (2398231234233251) is not divisible by 2
Given number (33282949823493) is not divisible by 2``````
``````#  Python 3 program for
#  Check that if large number is divisible by 2
class Divisibility :
def isDivisibleBy2(self, num) :
#  Condition
#  ➀ Last digit should be a Even number
result = False
n = len(num)
if (n == 1 and num[0] == '0') :
#  Given number is zero
result = True
elif (n > 0) :
if (num[n - 1] == '0'
or num[n - 1] == '2'
or num[n - 1] == '4'
or num[n - 1] == '6'
or num[n - 1] == '8') :
result = True

if (result == True) :
print(" Given number (", num ,") is divisible by 2")
else :
print(" Given number (", num ,") is not divisible by 2")

def main() :
#  Test

if __name__ == "__main__": main()``````

Output

`````` Given number ( 122938934834534345345343940 ) is divisible by 2
Given number ( 2342348234 ) is divisible by 2
Given number ( 2398231234233251 ) is not divisible by 2
Given number ( 33282949823493 ) is not divisible by 2``````
``````#  Ruby program for
#  Check that if large number is divisible by 2
class Divisibility
def isDivisibleBy2(num)
#  Condition
#  ➀ Last digit should be a Even number
result = false
n = num.length
if (n == 1 && num[0] == '0')
#  Given number is zero
result = true
elsif (n > 0)
if (num[n - 1] == '0' ||
num[n - 1] == '2' ||
num[n - 1] == '4' ||
num[n - 1] == '6' ||
num[n - 1] == '8')
result = true
end

end

if (result == true)
print(" Given number (", num ,") is divisible by 2", "\n")
else

print(" Given number (", num ,") is not divisible by 2", "\n")
end

end

end

def main()
#  Test
end

main()``````

Output

`````` Given number (122938934834534345345343940) is divisible by 2
Given number (2342348234) is divisible by 2
Given number (2398231234233251) is not divisible by 2
Given number (33282949823493) is not divisible by 2
``````
``````import scala.collection.mutable._;
// Scala program for
// Check that if large number is divisible by 2
class Divisibility()
{
def isDivisibleBy2(num: String): Unit = {
// Condition
// ➀ Last digit should be a Even number
var result: Boolean = false;
var n: Int = num.length();
if (n == 1 && num.charAt(0) == '0')
{
// Given number is zero
result = true;
}
else if (n > 0)
{
if (num.charAt(n - 1) == '0' ||
num.charAt(n - 1) == '2' ||
num.charAt(n - 1) == '4' ||
num.charAt(n - 1) == '6' ||
num.charAt(n - 1) == '8')
{
result = true;
}
}
if (result == true)
{
println(" Given number (" + num + ") is divisible by 2");
}
else
{
println(" Given number (" + num + ") is not divisible by 2");
}
}
}
object Main
{
def main(args: Array[String]): Unit = {
var task: Divisibility = new Divisibility();
// Test
}
}``````

Output

`````` Given number (122938934834534345345343940) is divisible by 2
Given number (2342348234) is divisible by 2
Given number (2398231234233251) is not divisible by 2
Given number (33282949823493) is not divisible by 2``````
``````import Foundation;
// Swift 4 program for
// Check that if large number is divisible by 2
class Divisibility
{
func isDivisibleBy2(_ n: String)
{
let num = Array(n);
// Condition
// ➀ Last digit should be a Even number
var result: Bool = false;
let n: Int = num.count;
if (n == 1 && num[0] == "0")
{
// Given number is zero
result = true;
}
else if (n > 0)
{
if (num[n - 1] == "0" ||
num[n - 1] == "2" ||
num[n - 1] == "4" ||
num[n - 1] == "6" ||
num[n - 1] == "8")
{
result = true;
}
}
if (result == true)
{
print(" Given number (", n ,") is divisible by 2");
}
else
{
print(" Given number (", n ,") is not divisible by 2");
}
}
}
func main()
{
// Test
}
main();``````

Output

`````` Given number ( 27 ) is divisible by 2
Given number ( 10 ) is divisible by 2
Given number ( 16 ) is not divisible by 2
Given number ( 14 ) is not divisible by 2``````
``````// Kotlin program for
// Check that if large number is divisible by 2
class Divisibility
{
fun isDivisibleBy2(num: String): Unit
{
// Condition
// ➀ Last digit should be a Even number
var result: Boolean = false;
val n: Int = num.length;
if (n == 1 && num.get(0) == '0')
{
// Given number is zero
result = true;
}
else if (n > 0)
{
if (num.get(n - 1) == '0' ||
num.get(n - 1) == '2' ||
num.get(n - 1) == '4' ||
num.get(n - 1) == '6' ||
num.get(n - 1) == '8')
{
result = true;
}
}
if (result == true)
{
println(" Given number (" + num + ") is divisible by 2");
}
else
{
println(" Given number (" + num + ") is not divisible by 2");
}
}
}
fun main(args: Array < String > ): Unit
{
// Test
}``````

Output

`````` Given number (122938934834534345345343940) is divisible by 2
Given number (2342348234) is divisible by 2
Given number (2398231234233251) is not divisible by 2
Given number (33282949823493) is not divisible by 2``````

Resultant Output Explanation

The provided Java code implements the above algorithm. It checks the last digit of the given number and verifies if it is even. Based on the result, it prints whether the number is divisible by 2 or not.

Time Complexity

The time complexity of this code is O(1) because it only involves checking the last digit of the given number, which can be done in constant time regardless of the number's length.

Comment

Please share your knowledge to improve code and content standard. Also submit your doubts, and test case. We improve by your feedback. We will try to resolve your query as soon as possible.

Categories
Relative Post