2011-04-12 14 views
7

में स्ट्रिंग के रूप में एक पूर्णांक का हेक्साडेसिमल प्रतिनिधित्व प्राप्त करें क्या अंतर्निहित एक स्ट्रिंग के रूप में सकारात्मक पूर्णांक का हेक्साडेसिमल प्रतिनिधित्व प्राप्त करने के लिए गणित में बनाया गया है (वर्णमाला के अक्षरों का उपयोग उच्च अंकों के रूप में)? वर्तमान में मैं के रूप मेंगणित

toHexString[n_Integer] := 
StringJoin[ 
    ToString /@ 
    (IntegerDigits[n, 16] /. Thread[Range[10, 15] -> CharacterRange["A", "F"]]) 
] 

उत्तर

15
In[254]:= IntegerString[{16, 34, 110, 5676767}, 16] 

Out[254]= {"10", "22", "6e", "569edf"} 

मेरे अपने कार्यान्वयन का उपयोग करें या, यदि आप परिणाम में मानक लोअरकेस वर्णों पसंद नहीं है:

In[255]:= ToUpperCase[IntegerString[{16, 34, 110, 5676767}, 16]] 

Out[255]= {"10", "22", "6E", "569EDF"} 

कृपया ध्यान दें IntegerString एक वैकल्पिक तीसरा तर्क है कि कि वर्णमाला क्रमबद्ध करते समय सही क्रम में क्रमबद्ध फ़ाइल नामों की श्रृंखला उत्पन्न करने में बहुत मददगार है:

In[256]:= Table["filename" <> IntegerString[i, 10, 4] <> ".jpg", {i, 1, 7}] 

Out[256]= {"filename0001.jpg", "filename0002.jpg", 
"filename0003.jpg", "filename0004.jpg", "filename0005.jpg", 
"filename0006.jpg", "filename0007.jpg"}