2017-02-26 6 views
1

私はPythonを学ぶのが初めてで、数学関数を使いこなしていました。私は、あなたが特定の力を見つけることを可能にする関数を作成しようとしました。正方形、立方体。 以下のコードを実行すると、必要な権限の大部分がリストされますが、いくつか見逃してしまいます。Pythonの数学関数が指定された範囲内のすべての答えを見つけられません

def more_powers(): 
    print "For which power do you wish to find: " 
    power = int(raw_input("> ")) 

    print "Choose the upperbound: " 
    n = int(raw_input("> ")) 

    for num in range(2, n): 
     for base in range(2, num): 
      if log(num, base)/power == 1: 
       print "%d is a power of %d." % (num, base) 
      else: 
       base += 1 


For which power do you wish to find: 
> 3 
Choose the upperbound: 
> 5000 
8 is a power of 2. 
27 is a power of 3. 
64 is a power of 4. 
343 is a power of 7. 
512 is a power of 8. 
729 is a power of 9. 
1331 is a power of 11. 
1728 is a power of 12. 
2197 is a power of 13. 
2744 is a power of 14. 
3375 is a power of 15. 
4096 is a power of 16. 

あなたはそれが5、6、10および17

答えて

2

Hintと同等のパワーを逃す見ることができるように:

>>> log(125, 5)/3 == 1 
False 
>>> log(125, 5) 
3.0000000000000004 

>>> log(216, 6)/3 == 1 
False 
>>> log(216, 6) 
3.0000000000000004 
関連する問題