İkili Sayıyı Sekizli'ye Dönüştüren Java Programı ve bunun tersi

Bu programda, Java'daki işlevleri kullanarak ikili sayıyı sekizlik sayıya ve bunun tersini yapmayı öğreneceksiniz.

Bu örneği anlamak için, aşağıdaki Java programlama konuları hakkında bilgi sahibi olmalısınız:

  • Java Yöntemleri
  • Java Operatörleri
  • Java sırasında ve yap… Döngü sırasında

Örnek 1: İkili Sekizliye Dönüştürme Programı

Bu programda, önce ikili sayıyı ondalık sayıya çevireceğiz. Ardından, ondalık sayı sekizlik biçime dönüştürülür.

 public class BinaryOctal ( public static void main(String() args) ( long binary = 101001; int octal = convertBinarytoOctal(binary); System.out.printf("%d in binary = %d in octal", binary, octal); ) public static int convertBinarytoOctal(long binaryNumber) ( int octalNumber = 0, decimalNumber = 0, i = 0; while(binaryNumber != 0) ( decimalNumber += (binaryNumber % 10) * Math.pow(2, i); ++i; binaryNumber /= 10; ) i = 1; while (decimalNumber != 0) ( octalNumber += (decimalNumber % 8) * i; decimalNumber /= 8; i *= 10; ) return octalNumber; ) )

Çıktı

 101001 ikili = 51 sekizli

Bu dönüşüm şu şekilde gerçekleşir:

İkiliden Ondalığa 1 * 2 5 + 0 * 2 4 + 1 * 2 3 + 0 * 2 2 + 0 * 2 1 + 1 * 2 0 = 41 Ondalıktan Sekizliye 8 | 41 8 | 5 - 1 8 | 0-5 (51)

Örnek 2: Sekizli İkiliye Dönüştürme Programı

Bu programda, ilk başta sekizli sayıdan ondalığa ondalık sayı. Ardından, ondalık sayı ikili sayıya dönüştürülür.

 public class OctalBinary ( public static void main(String() args) ( int octal = 67; long binary = convertOctalToBinary(octal); System.out.printf("%d in octal = %d in binary", octal, binary); ) public static long convertOctalToBinary(int octalNumber) ( int decimalNumber = 0, i = 0; long binaryNumber = 0; while(octalNumber != 0) ( decimalNumber += (octalNumber % 10) * Math.pow(8, i); ++i; octalNumber/=10; ) i = 1; while (decimalNumber != 0) ( binaryNumber += (decimalNumber % 2) * i; decimalNumber /= 2; i *= 10; ) return binaryNumber; ) )

Çıktı

 Sekizlik 67 = ikili olarak 110111

Bu dönüşüm şu şekilde gerçekleşir:

Sekizlikten Ondalığa 6 * 8 1 + 7 * 8 0 = 55 Ondalıktan İkiye 2 | 55 2 | 27 - 1 2 | 13 - 1 2 | 6 - 1 2 | 3 - 0 2 | 1 - 1 2 | 0-1 (110111)

Ilginç makaleler...