मैं इसएक्स संख्या से कम दो की सबसे बड़ी शक्ति पाएं?
def power_two(n, base = -1):
result = 2 ** base
if result < n:
base += 1
power_two(n, base)
else:
if result == n:
print base
else:
print base - 1
क्या एक्स संख्या से कम दो में से सबसे बड़ी शक्ति को खोजने के लिए pythonic तरीका है कर रही हूँ?
संपादित उदाहरण: power_two (100) वापसी केवल सत्ता
जब आप कम कहते हैं, तो क्या आपका मतलब "कम या बराबर" या "सख्ती से कम" है? दूसरे शब्दों में, अगर एन 2 की सटीक शक्ति है, तो उदाहरण के लिए 32 क्या वापस आना चाहिए? –
लॉगरिदम का उपयोग करने के बारे में "पायथनिक" क्या है? वे पाइथन के पूर्ववर्ती हैं 377 साल या उससे भी ज्यादा। –
@ बस मेरा सही विकल्प: इसके बजाय आप क्या सुझाव देंगे? –