2

この興味深い質問を見つけた結果、JavaScript でロジックを実装した例を書き、それを質問に投稿することにしました。問題は、ロジックの実装に問題があることです。実装の基礎となる Ruby を話すことができますが、解決に苦労している無限の while ループに問題があります。

ここのjs.do.itに実装全体があります:http://jsdo.it/rfkrocktk/k9Jq

function encode(i) {
   if (i == 0) return DICTIONARY[0];

   var result = '';
   var base = DICTIONARY.length;

   while (i > 0) {
       result += DICTIONARY[i % base];
       i = i / base;
   }

   result = result.reverse();
   return result;
}

ここで何が間違っていますか?

4

1 に答える 1

1

Javascriptは、デフォルトで浮動小数点演算を使用します。使用するi = Math.floor(i / base);

于 2011-09-25T21:51:22.857 に答える