Conversion from binary to octal in typescript
Ts program for Conversion from binary to octal. Here mentioned other language solution.
// Typescript program for
// Convert Binary number into Octal number
class Convert
{
// Convert decimal number into octal
public number octal(number:number)
{
var result = 0;
var multiplier = 1;
var remainder = 0;
while (number != 0)
{
remainder = number % 8;
result = (remainder * multiplier) + result;
multiplier *= 10;
number = parseInt(number / 8);
}
return result;
}
public binaryToOctal(num:string)
{
if (num.length == 0)
{
// When empty binary number
return;
}
// Some useful variable
var flag = false;
var decimalNo = 0;
var counter = 0;
var index = num.length - 1;
// We Assume that given binary number is valid
// Here - indicates negative binary number
// First convert binary to decimal
// Example = 10111 => 23
while (index >= 0)
{
if (num.charAt(index) == '1')
{
decimalNo += (1 << counter);
}
else
if (num.charAt(index) != '0')
{
if (index == 0 && num.charAt(index) == '-')
{
// When get negative number
flag = true;
}
else
{
// Not a valid binary number
return;
}
}
counter += 1;
index -= 1;
}
// When given number is
var output = this.octal(decimalNo);
if (flag == true)
{
output = -output;
}
// Display given number
console.log("Binary : " + num);
// Display result
console.log(" Octal : " + output);
}
public static main()
{
var task = new Convert();
// Test Case
task.binaryToOctal("1111");
task.binaryToOctal("10111");
task.binaryToOctal("101011");
task.binaryToOctal("11011");
task.binaryToOctal("-1000110");
}
}
Convert.main();
/*
file : code.ts
tsc --target es6 code.ts
node code.js
*/
Output
Binary : 1111
Octal : 17
Binary : 10111
Octal : 27
Binary : 101011
Octal : 53
Binary : 11011
Octal : 33
Binary : -1000110
Octal : -106
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.
New Comment