準備藍橋杯 dyx 十六進製制轉換八進位制

2021-06-29 05:20:56 字數 774 閱讀 1990

問題描述

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

輸入格式

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

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

輸出格式

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

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

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

樣例輸入2

39 123abc

樣例輸出71

4435274

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

#include#includeusing namespace std;

int main()

{ //每乙個十六進製制的數都可以轉換成四位二進位制的數。

//1-0001,2-0010,3-0011,4-0100,5-0101,6-0110,7-0111,8-1000,9-1001,

//a-1010,b-1011,c-1100,d-1101,e-1110,f-1111,就是這樣例如9a就是10011010

//3個二進位制為一位八進位制.

string dyx,wyx;//dyx表示輸入的十六進製制的字串,wyx表示轉換過來的字串.

int n;

cin>>n;

while(n--)

{cin>>dyx;

wyx="";

for(int i=0;i

準備藍橋杯 dyx 十進位制轉換十六進製制

問題描述 十六進製制數是在程式設計時經常要使用到的一種整數的表示方式。它有0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f共16個符號,分別表示十進位制數的0至15。十六進製制的計數方法是滿16進1,所以十進位制數16在十六進製制中是10,而十進位制的17在十六進製制中是11,以此類推...

藍橋杯 十六進製制轉換為八進位制

要求 輸入長度不超過100000的幾個十六進製制,將其轉換為八進位制。最簡單的做法,將十六進製制轉化為二進位制的bcd碼,然後再將bcd碼轉換為八進位制。注意十六轉bcd一位十六進製制對四位二進位制,bcd轉八進位制三位二進位制對一位八進位制。這裡用了二維陣列。include include inc...

藍橋杯備戰 十六進製制轉換為八進位制

十六進製制 0 9,a f 八進位制 0 7 十六進製制轉為八進位制的演算法思想 1 總的思路 先將十六進製制轉換為二進位制,再將二進位制轉換為八進位制 2 十六進製制轉換為二進位制的方法 用列舉法 switch一一列出對應的值,如 十六進製制有16種可能0 9,a f對應二進位制的值 輸入的數字可...