2012-09-26 56 views
0

我現在使用NTL來處理大整數。這個庫的大整數被聲明爲ZZ。我想從ZZ號碼變成十六進制號碼。但是,NTL不支持從ZZ到十六進制的轉換,因爲我檢查了。從大整數ZZ(在NTL中聲明)到十六進制

所以我的問題是我怎麼可以從ZZ(或可能代表大十進制數的字符串)到十六進制格式?我喜歡,如果有可能使用這個庫的fascilities直接去從ZZ爲十六進制,如果有人可以幫助

+1

一個數字是一個數字,十進制和十六進制是表示該數字的不同方式。你想將ZZ轉換爲一個表示其十六進制形式的字符串,反之亦然? '「十六進制到ZZ」'沒有任何意義。 – Marlon

+0

是的,我想獲得一個ZZ數字的十六進制形式 – Hashed

回答

0

Step1:將大量XX最初作爲一個字符串s

第二步:說字符串s具有長度l,則s = s [0] s [1] ... s [l-1]。我們從位置0開始讀取每個字符,並且每次使用int digit = atoi(ts.c_str())將此數字轉換爲整數可變數字;然後,我們使用遞歸關係值= 10 *值+數字,其中值聲明爲ZZ並初始化爲0.遍歷完所有數字後,我們將字符串傳遞給ZZ值步驟3:現在轉換爲十六進制格式,使用NTL我們可以計算ZZ數的模16。因此,從值%2開始,然後計算(值 - 值%16)/ 16並以這種方式繼續,我們得到十六進制格式。