2
我想將任何正整數轉換爲一些基地從2
到9
。 爲基數2
輸出應該是:整數轉換爲給定的基地
0 -> enlist 0
1 -> enlist 1
31 -> 1 1 1 1 1
62 -> 1 1 1 1 1 0
63 -> 1 1 1 1 1 1
64 -> 1 0 0 0 0 0 0
我開發了這個
convertToBase: reverse {[x;base;result]
result,: `int$x mod base;
x-: last result;
x%: base;
$[x=0;result;.z.s[x;base;result]]
};
//invocation
convertToBase[62;2;()]
的問題是下一個功能,如果有任何內建Q
功能,有效地做到這一點?如果沒有,如何優化解決方案?
謝謝保羅。你使用哪個版本的Q.我嘗試了3.2和3.3並得到了'nyi'。是3.4嗎? –
我目前使用kdb + 3.4 2016.06.14,是的。直到最近我還沒有機會使用這個成語,所以我從來沒有在舊版本上進行過測試。 –
謝謝你的回覆,很好的功能,壞的不在<3.4。 –