正整數的任意進製轉換

2021-10-23 23:14:22 字數 1083 閱讀 6524

描述

將 p 進製 n 轉換為 q 進製。p 和 q 的取值範圍為[2,36],其中,用到的數碼按從小到大依次為:0,1,2,3,4,5,6,7,8,9,a,b,…,z,不考慮小寫字母。

輸入一共1+m 行:

第1行為 m,表示後面有 m 行(1 <= m <= 60).

其後的m行中,每行3個數: 進製p,p進製數n,以及進製 q。

三個數之間用逗號間隔。

n 的長度不超過50位。

輸出轉換後的 q 進製數。

樣例輸入

618,2345678a123,18

15,23456,18

12,2345678,20

16,12345678,23

25,3456ab,21

18,ab1234567,22

樣例輸出

2345678a123

114e0

22b7a4

21a976l

7c2136

22jf0g367

解題除k取餘法

**

#include

#include

using

namespace std;

char c[36]

=;int a[55]

,b[100000];

//a為原數,b為答案

int p,q;

char n[55]

;//n為原數的字串

intmain()

int k=

0,flag=1;

//k為答案的位數,flag用於標記結束情況

while(1

) b[k++

]=ans;

for(

int i =

0; i < len;

++i)

flag=1;

}if(flag)

break;}

for(

int i = k-

1; i >=

0; i--

) cout<}return0;

}

正整數的任意進製轉換

時間限制 1 sec 記憶體限制 128 mb 題目描述 將 p 進製 n 轉換為 q 進製。p 和 q 的取值範圍為 2,36 其中,用到的數碼按從小到大依次為 0,1,2,3,4,5,6,7,8,9,a,b,z,不考慮小寫字母。輸入一共1 m 行 1行為 m,表示後面有 m 行 1 m 60 其...

POJ44 正整數的任意進製轉換

描述將 p 進製 n 轉換為 q 進製。p 和 q 的取值範圍為 2,36 其中,用到的數碼按從小到大依次為 0,1,2,3,4,5,6,7,8,9,a,b,z,不考慮小寫字母。注意 n 的長度不超過50位。三個數之間用逗號間隔。關於輸入 1 m 行,第1行為 m,表示後面有 m 行,m不小於1.其...

大整數任意進製轉換

include include include include using namespace std char str 1000 輸入字串 int start 1000 ans 1000 res 1000 被除數,商,餘數 轉換前後的進製 static int oldbase static int...