基礎練習12 十六進製制轉換成八進位制

2021-08-15 22:22:39 字數 1022 閱讀 3773

問題描述

給定n個十六進製制正整數,輸出它們對應的八進位制數。

輸入格式

輸入的第一行為乙個正整數n (1<=n<=10)。

接下來n行,每行乙個由0~9、大寫字母a~f組成的字串,表示要轉換的十六進製制正整數,每個十六進製制數長度不超過100000。

輸出格式

輸出n行,每行為輸入對應的八進位制正整數。

【注意】

輸入的十六進製制數不會有前導0,比如012a。

輸出的八進位制數也不能有前導0。

樣例輸入

2 39

123abc

樣例輸出

71 4435274

【提示】

先將十六進製制數轉換成某進製數,再由某進製數轉換成八進位制。

#include 

#include

#include

using

namespace

std;

int main()

; map

m;m["000"] = "0"; m["001"] = "1"; m["010"] = "2"; m["011"] = "3";

m["100"] = "4"; m["101"] = "5"; m["110"] = "6"; m["111"] = "7";

for (int i = 0; i < n; i++) else

}int lenb = b.length();

if (lenb % 3 == 1) else

if (lenb % 3 == 2)

int flag = 0;

for (int j = 0; j < lenb; j += 3)

if (flag == 1 && j == 3 && t == "0")

cout

<< t;

}cout

<< endl;

b = "";

}return

0;}

十六進製制轉換成八進位制

第一次發部落格,若寫的不好,希望大家多提下意見 乙個簡單的進製轉換的問題 十六進製制轉換成八進位制 思想 先把十六進製制的數轉成二進位制,然後再把二進位制的數轉成八進位制 include include using namespace std string hextobin string hex 十...

十六進製制轉換成二進位制

public static void main string args throws exception string strs newstring length int j 0 for int i 0 i str.length i else list.addall arrays.aslist st...

公私鑰轉換成十六進製制形式

在一些情況下,我們需要將公私鑰由pem格式轉換成十六進製制來提供給第三方進行使用,openssl沒有提供命令列的轉換方式,其中實現介面如下 私鑰轉換為16進製為 bool convertpripemtohex const std string pem private key,std string h...