2015-04-24 12 views
6

मैं अलग ठिकानों (आधार -10, आधार-8, आधार -16, आदि) में संख्या के साथ काम कर रहा हूँ। मैं प्रत्येक नंबर में वर्णों की संख्या गिनने की कोशिश कर रहा हूं।विभिन्न अड्डों में संख्याओं में संख्याओं की संख्या कैसे गिनें?

उदाहरण

संख्या: ABCDEF

अंक की संख्या:

मैं विधि लघुगणक के आधार पर के बारे में पता है, लेकिन मैं कुछ समस्याओं का सामना करना पड़ रहा है।

  1. This Python script outputs है कि यह 1,000,000 से बाहर 3969 संख्या में सही ढंग से अंकों की संख्या की गणना करने में विफल रहा।

  2. मुझे लगता है कि विधि लघुगणक का उपयोग करता है बल्कि धीमी

लिंक हो सकता है:

  • This C program बहुत धीमी गति से होना चाहिए (क्या हुआ अगर मैं एक बहुत बड़ी संख्या है?)। यह विभिन्न अड्डों में संख्याओं से निपट नहीं सकता है (उदाहरण के लिए, आधार -16)।

  • नहीं के रूप में वहाँ this के शिकार ओपी केवल आधार-10


के बारे में पूछ रहा था संपादित करें: निश्चित रूप से मैं एक स्ट्रिंग की लंबाई की गणना कर सकते हैं, लेकिन क्या मुझे अपना सबसे पसंदीदा, अगर को स्ट्रिंग करने के लिए गणना के बिना गणना करना संभव है। मैं एल्गोरिथ्म जानने सिर्फ स्रोत आधार और आधार कन्वर्ट करने के लिए यह करने के लिए मदद कर सकता है जानना चाहता हूँ चाहते हैं।

EDIT2:स्रोत आधारआधार -10 और आधार कन्वर्ट करने के लिए किसी अन्य आधार हो सकता है।


हम विभिन्न आधारों में संख्याओं में अंकों की संख्या की गणना कैसे कर सकते हैं?

यदि मुझे आधार -10 में संख्या पता है, तो मैं रूपांतरण किए बिना बेस -16 (बेस -8, आदि) में परिवर्तित संख्या में अंकों की संख्या की गणना कैसे करूं?

नोट: कुछ अजगर या सी कोड हो जाएगा बहुत

+0

आपको एक संपूर्ण उत्तर लिखने से पहले सिर्फ एक विचार है, इस तरह की एक विधि आपको संतुष्ट करनी चाहिए: उदाहरण के लिए आवश्यक शक्ति एन को ढूंढें 16^n> your_number> 16^n, क्योंकि तब अंकों की संख्या कुछ होनी चाहिए एन ... –

+1

क्या आप हमसे पूछ रहे हैं कि अपनी पायथन लिपि कैसे डिबग करें? – abarnert

+0

@EmmanuelJay, मुझे लगता है कि कोई भी विधि जो पर्याप्त तेज़ी से अनुकूल होगी। – ForceBru

उत्तर

संबंधित मुद्दे