我試圖計算的位數Clojure中的一些數字如下:我得到的StackOverflowError甚至2個位數StackOverflow的同時計數位數
(defn num-digits [n]
(if (= 0 n)
0
(inc (num-digits (/ n 10)))))
(println (num-digits 93))
但是如果我更換/時取消選中鴻溝然後它爲至少93但無論的技術適用於:
93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000
首先,我想知道如何用Clojure進行分割C風格。每當我做(/ x y)我得到一個比率,而不是一個整數。有什麼辦法呢?
其次,有沒有一種方法可以將這個數字轉換爲一個數字向量並對其進行調用。
感謝,
阿賈伊摹
我不知道'關於Clojure,但不應該有某種方法將數字轉換爲字符串,然後只是獲得字符串的長度?幾乎所有我能想到的語言都有這樣的功能。 – ewall 2010-01-21 18:47:38
log10:https://stackoverflow.com/questions/27229987/can-i-know-how-many-digits-a-number-is-without-count-it – coredump 2016-02-17 22:13:15