การแปลงไบนารีเป็นทศนิยมใน Java
ตัวเลขที่มีเพียง 2 หลักคือ 0 และ 1 เรียกว่าเลขฐานสอง จะแสดงในระบบเลขฐาน 2 เท่านั้น เรารู้ว่าระบบเลขฐานสองเป็นภาษาดิจิทัลดั้งเดิมของคอมพิวเตอร์สมัยใหม่ แต่เราคุ้นเคยกับเลขฐานสิบมากกว่า แน่นอน คุณสามารถแปลงเลขฐานสองเป็นเลขฐานสิบและในทางกลับกันได้ ในแผนภาพด้านล่าง คุณจะเห็นตัวอย่างการแปลงไบนารีเป็นทศนิยม 10101 เป็นเลขฐานสองที่ใช้อธิบายการคำนวณทางคณิตศาสตร์
- โดยใช้วิธีจาวา
- โดยใช้ตรรกะที่กำหนดเอง
วิธีการสร้างล่วงหน้าของ Java
Java ให้เมธอดInteger.parseInt()เพื่อแปลงสตริงเป็นจำนวนเต็ม วิธีการ parseInt()เป็นของคลาส จำนวนเต็มไวยากรณ์
public static int parseInt(String binaryNumber, int radix)
ตัวอย่าง
public class ConvertingBinaryToDecimal {
public static void main(String args[]){
String binaryNumber="10101";
int decimalNumber=Integer.parseInt(binaryNumber,2);
System.out.println(decimalNumber);
}
}
เอาต์พุต
21
ใช้ตรรกะที่กำหนดเอง
เรายังสามารถเขียนโปรแกรมในภาษาจาวาที่รับจำนวนเต็มและแปลงเป็นเลขฐานสิบ ลองดูตัวอย่างเพื่อทำความเข้าใจตัวอย่าง
public class ConvertingBinaryToDecimal {
// function for converting binary to decimal number
public static int getDecimalNumber(int binaryNumber){
int decimalNumber = 0;
int power = 0;
while(binaryNumber > 0){
//taking the rightmost digit from binaryNumber
int temp = binaryNumber%10;
//now multiplying the digit and adding it to decimalNumber variable
decimalNumber += temp*Math.pow(2, power);
//removing the rightmost digit from binaryNumber variable
binaryNumber = binaryNumber/10;
//incrementing the power variable by 1 to be used as power for 2
power++;
}
return decimalNumber;
}
public static void main(String args[]){
System.out.println("Decimal value is: "+getDecimalNumber(111010));
System.out.println("Decimal value is: "+getDecimalNumber(001010));
}
}
เอาต์พุต
ค่าทศนิยมคือ: 58 ค่าทศนิยมคือ: 24
GO TO FULL VERSION