Это код, который я хочу перевести на Racket:
public static ArrayList<Integer> convert(int k, int n) {
ArrayList<Integer> lst = new ArrayList<>();
while (k / n != 0) {
lst.add(k % n);
k = k/n;
}
lst.add(k % n);
return lst;
}
Например, в Racket (convert 23 2)
должен возвращать двоичный код десятичного числа 23 , то есть (list 1 0 1 1 1)
.
Это то, что я получил до сих пор:
(define (convert k n)
(cond
[(> (/ k n) 0) (list(modulo k n))]
[else 0]
))
Это работает для первого элемента списка.
Спасибо за любую помощь!