當前位置:首頁 » 編程語言 » java八進制

java八進制

發布時間: 2023-01-19 22:27:36

java編程實現給出一個3位八進制數求出對應的十進制數

以下是C++的:
#include<iostream>
using namespace std;
int main()
{
int a,b,c,d;
cout<<"請輸入待轉換的數:";
cin>>a;
//二進制分別計算每一位
if(a==0)cout<<a;
b=a;c=0;d=1;
while(b!=0)
{
c+=(b%2)*d;//依次把b除以2的余數寫在c的對應位置上
b=b/2;
d*=10;
}
cout<<c<<endl;
//八進制和十六進制使用格式化輸出即可,oct表示八進制,hex表示十六進制
cout<<oct<<a<<endl;
cout<<hex<<a<<endl;
}

⑵ java裡面二進制 八進制 十進制 十六進制怎麼互相轉換,有什麼規律

=============(正)十進制轉二進制
除二將余數倒置
eg: 127 /2
商:63 /2 31 /2 15 /2 7 /2 3 /2 1
余數:1 1 1 1 1 1
1111111
=============(負)十進制轉二進制
1、先求負數絕對值的二進制
2、將得到的二進制完全取反+1
eg: -12
1、0000 1100
2、1111 0011 + 1 = 1111 0100

=============(正)十進制轉八進制
除八將余數倒置
eg:54 /8 =66
6
6
=============(負)十進制轉八進制
1、先將十進制轉為二進制
2、再將二進制轉為八進制
eg:-32
1、0010 0000
2、1110 0000
3、三位三位轉
340

=============十進制轉十六進制
1、先將十進制轉為二進制
2、將二進制轉為十六進制

=============二進制轉為十進制
(正)二進制位上的各個數字乘以以2為底數,以自然數為次冪(自然數從0開始)
0110 1011 1*2^0 + 1*2^1 + 0*2^2 + 1*2^3 + 0*2^4 + 1*2^5 + 1*2^6 = 107

(負)
1、首先得到負號
2、將該二進制數取反+1
3、將得到的數轉為十進制加上負號。

=============二進制轉八進制
(1)將二進制三個三個分為一組,分別求出每組二進制的八進制值,將所得到的值依次排開

(2) 1、將二進制轉為十進制
2、將十進制轉為八進制

============二進制轉十六進制
將二進制四個四個分為一組,分別求出每組二進制的十六進制值,將所得到的值依次排開

============八進制轉二進制
(1)將八進制各個位上的數單個轉為二進制,不足三位的補0
eg:127 001 010 111

(2) 1、將八進制轉為十進制
2、再將十進制轉為二進制

============八進制轉十進制
八進制位上的各個數字乘以以8為底數,以自然數為次冪(自然數從0開始)
543 3*8^0 + 4*8^1 + 5*8^2 = 355

============八進制轉十六進制
1、先將八進制轉為二進制
2、再將所得的二進制轉為十六進制

============十六進制轉二進制
將十六進制各個位上的數單個轉為二進制,不足四位的補0
eg:127 0001 0010 0111

============十六進制轉其他進制
都需要先轉為二進制,再轉為其他進制

⑶ java二進制轉八進制無參數怎麼辦

java二進制轉八進制方法。設二進制數為100010101將三個數字拆成一塊100010101100。
1、使用第二個參數指定的基數,將字元串參數解析為有符號的整數。

⑷ java方法利用棧,將十進制數轉換成八進制的數

import java.util.Scanner;
import java.util.Stack;/**
* 將十進制數轉換為八進制數
*
* @author austin
*/
public class DecimalToOctalConvertor { /**
* @param args
*/
public static void main(String[] args) {
/*
* 接收一個用戶從通過鍵盤輸入的整數,作為要轉換的十進制數
*/
Scanner reader = new Scanner(System.in);
System.out.print("請輸入要轉換的十進制數:");
int decimalNum = reader.nextInt(); /*
* 採用除8取余,從下至上的演算法來計算八進制數:即用進制數除以8,然後將所得余數作為8進制數的低位數,再用所得的商繼續除以8,以此類推,直到商為0為止
* 在這個過程中,每次的余數都需要保存到一個列表中,而且後添加到列表中的元素要先輸出,即後進先出,因此採用棧結構來處理
*/
Stack<Integer> octalStack = new Stack<Integer>();
int temp = decimalNum;
do {
octalStack.push(temp % 8); // 將除以8所得的余數添加到棧中
temp /= 8; // 計算除以8所得的商
}
while (temp != 0); // 如果商不為0,則繼續計算下去 /*
* 採用後進先出的方式輸入棧中的元素,就得到了所要求的八進制數
*/
System.out.print("八進制:0");
while (!octalStack.isEmpty()) {
System.out.print(octalStack.pop());
}
System.out.println();
}
}

⑸ java怎樣將十進制轉為八進制的數的編碼

十進制轉八進制最簡單的方法
System.out.println("10的八進制="+Integer.toOctalString(10));
擴展
十進制轉二進制、八進制、十六進制
System.out.println("10的二進制="+Integer.toBinaryString(10));
System.out.println("10的八進制="+Integer.toOctalString(10));
System.out.println("10的十六進制="+Integer.toHexString(10));
10的二進制=1010
10的八進制=12
10的十六進制=a

⑹ %o在Java中是什麼意思

%o:表示把數據按八進制整型版輸出。
Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特徵。Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程。

⑺ java十進制數轉換成二進制,8進制以及16進制二進制轉十進制

Java程序:

publicclassMain{
publicstaticvoidmain(String[]args){
intnum=1234;
System.out.println("十進制:"+num);
System.out.println("二進制:"+Integer.toBinaryString(num));
System.out.println("八進制:"+Integer.toOctalString(num));
System.out.println("十六進制:"+Integer.toHexString(num));
System.out.println();

Stringstr="10011010010";
System.out.printf("二進制:%s 十進制:%d ",str,Integer.parseInt(str,2));
str="2322";
System.out.printf("八進制:%s 十進制:%d ",str,Integer.parseInt(str,8));
str="4D2";
System.out.printf("十六進制:%s 十進制:%d ",str,Integer.parseInt(str,16));
}
}


運行測試:

十進制:1234
二進制:10011010010
八進制:2322
十六進制:4d2

二進制:10011010010 十進制:1234
八進制:2322 十進制:1234
十六進制:4D2 十進制:1234
熱點內容
生女的演算法 發布:2025-07-18 08:17:54 瀏覽:645
加密硬碟推薦 發布:2025-07-18 08:11:22 瀏覽:944
oppo手機的密碼是多少 發布:2025-07-18 08:10:27 瀏覽:764
2匹壓縮機重 發布:2025-07-18 08:01:40 瀏覽:181
雲蟻物聯的雲存儲怎麼取消退款 發布:2025-07-18 08:01:39 瀏覽:486
訪問電腦版網頁 發布:2025-07-18 08:01:02 瀏覽:246
php集成軟體 發布:2025-07-18 07:54:36 瀏覽:143
華為密碼多少我忘記了告訴我 發布:2025-07-18 07:53:05 瀏覽:286
安卓怎麼上傳音樂到網易雲 發布:2025-07-18 07:22:22 瀏覽:375
c語言保存txt文件 發布:2025-07-18 07:01:27 瀏覽:175