Given a Decimal Number as Input. Now, write a Kotlin Program to Convert Decimal Number to equivalent binary number.
Input: 4 Output: 100
Input: 6 Output: 110
Input: 5 Output: 101
1. Program to Convert Decimal to Binary
Sourcecode –
import java.util.* import kotlin.math.pow fun main() { val read = Scanner(System.`in`) println("Enter n:") var decimalN = read.nextInt() var binaryN = 0 var count = 0 while (decimalN != 0) { val rem = decimalN % 2 val c = 10.toDouble().pow(count) binaryN += (rem * c).toInt() decimalN /= 2 count++ } println("Equivalent Binary: $binaryN") }
When you run the program, output will be –
Enter n: 120 Equivalent Binary: 1111000
Explanation:
Here, we have created an object of Scanner. Scanner takes an argument which says where to take input from.
System.`in` means take input from standard input – Keyboard.
read.nextInt() means read anything entered by user before space or line break from standard input – Keyboard.
We stored value entered by user in variable decimalN.
Example,
Assume decimalN = 10
-
At decimalN = 10
Inside while loop,
rem = 0
c = 1
binaryN = 0Now, decimalN = 5
count = 1 -
At decimalN = 5
Inside while loop,
rem = 1
c = 10
binaryN = 10Now, decimalN = 2
count = 2 -
At decimalN = 2
Inside while loop,
rem = 0
c = 100
binaryN = 10Now, decimalN = 1
count = 3 -
At decimalN = 1
Inside while loop,
rem = 1
c = 1000
binaryN = 1010Now, decimalN = 0
count = 4 - At decimalN = 0 , (decimalN != 0) is false. So, while loop is terminated.
Finally, value in binaryN is our resultant binary number for decimal number 10.
Note – It won’t work for large decimal number. If you want to convert large number you need to change data type in above code.
Or, you can use inbuilt library function to convert decimal to binary.
2. Using toBinaryString() function to Convert Decimal to Binary
We can use Integer.toBinaryString() function to convert decimal to binary number.
import java.util.* fun main() { val read = Scanner(System.`in`) println("Enter n:") val decimalN = read.nextInt() val binaryResult = Integer.toBinaryString(decimalN) println("Equivalent Binary: $binaryResult") }
When you run the program, output will be –
Enter n: 999999999 Equivalent Binary: 111011100110101100100111111111
Thus, we went through kotlin program to convert decimal number to binary number.