Данный отчёт сгенерирован 10.02.2023 18:21:31 UTC.
HTML версия (этот сайт) сгенерирован 10.02.2023 18:21:38 UTC.
Коммит: [bfeb65b9] add automatic zip creation
10.02.2023 18:21:31
Задача: Цифри цілого числа 10.02.2023 18:21:31
Описание: Зібрати до масиву цифри цілого числа n, починаючи зі старшої. Для цього визначте рекурсивну функцію digits(n, b), яка приймає число n та основу системи числення b (2 <= b <= 10). Функція повертає масив цифр (старша цифра на початку масиву), наприклад, digits(6, 2) => [1,1,0]. Не використовувати while, for. 10.02.2023 18:21:31
Решений: 35 10.02.2023 18:21:31
Цифри цілого числа 10.02.2023 18:21:31
 function digits(n, b) {
  if (n < b) {
    return [n];
  }
  return [...digits(Math.floor(n / b), b), n % b];
}
 function digits(n, b) {
    if(Math.floor(n / b) == 0){
        return [n]
    }
    return digits(Math.floor(n / b), b).concat([n % b]);
}
function digits(n, b, a) {
    let u = a == undefined;
    if(u)
        a = [];
    if(n >= 1)
        digits(Math.floor(n/b), b, a);
    a.push(n%b);
    if(a[0] == 0 && u)
        a = a.splice(1);
    return a;
}
 function digits(n, b) {
    let resArr = [];
    f(n, b);
    function f(n, b){
        let tmp = n%b;
        n = Math.trunc(n/b);
        resArr.unshift(tmp);
        if(n != 0){
            f(n, b);
        }
        return resArr;
    }
    return resArr;
}
 function digits(n, b) {
    if (n < b) {
        return [n];
    } else {
        let digit = n % b;
        let rest = Math.floor(n / b);
        return [...digits(rest, b), digit];
    }
}
 let digits = (n,b) =>  n.toString(b).split("")
 function digits(n, b) {
    var arr = [];

    function next(n) {
        let num = n % b;
        arr.push(num);
        let next_num = (n - num) / b;
        if (next_num > b - 1) {
            return next(next_num);
        } else {
            arr.push(next_num);
        }
    }
    next(n)
    return arr.reverse();
}
 function digits(n, b){
    if (n == 0) return [];
    let res = digits((n-n%b)/b, b);
    res.push(n%b);
    return res;
}
 function digits(n, b){
    return n.toString(b).split('')
}
 function digits(x, b, str = []){
  if (!x) return str;
  
  let a = x % b;
  str.unshift(a); 
  x = (x - a) / b;
  
  return digits(x, b, str);
  
  
  /*
  
    return x.toString(b).split('')
  */
}
 function digits(a, b, array = []){
    a = a.toString(b);
    if(a.toString().length == 0) return array;
    array.push(parseInt(a.slice(0,1)));
    return digits(a.slice(1, a.length), 10, array);
}
 function digits(n,b){
    if(n===0){
        return []
    }
    return [...digits((n-n%b)/b,b),n%b]    
}
 const digits =  (n, b) => n.toString(b).split('').map(Number);
 function digits(n, b){
    if (n< b){
        return [n];
    }
    let l=n%b;
    return [...digits((n-l)/b, b), l];
}
 function digits(n, base){
    if (n){
        return digits(Math.floor(n / base), base).concat([n % base])
    } else return []
}
 function digits(n, b) {
    if (n < b) {
        return [n];
    } else {
        return [...digits(Math.floor(n / b), b), n % b];
    }
}
 function digits(n,b)
{
    if(n<=0) return [];
    let array = [];
    let number = n%b;
    n =(n-number)/b
    array.push(number);
    let w = digits(n,b);
    w = w.concat(array);
    return w;
}
 function digits(n, b){
    return n.toString(b).split('')
}
 function digits(n,b){
    if(n< b){
        return [n]
    }
    let a = digits(parseInt(n/b),b)
    a.push(n-parseInt(n/b)*b)
    return a
}
 function digits(n, b, res = []){
        res.push(n % b);
        n = Math.floor(n / b);
        if(n > 1){
        digits(n, b, res);
        }else {
            n == 0 ? n = n : res.push(n);
            res.reverse();
            
        }
        return res;
    }
 function digits(n, b) {
  if (n === 0) {
    return [];
  } else {
    return digits(Math.floor(n / b), b).concat(n % b);
  }
}
 function digits(n, b) {
    if (n < b) return [n];
    const lastNum = n % b;
    return [...digits((n - lastNum) / b, b), lastNum];
}
 function digits(n, b) {
    let res = [];
    function decide(){
        if(n == false)
            return res;
        return(fab(n));
    }
    function fab(arg){
        let digit = arg % b;
        res.unshift(digit);
        n = (n - digit) / b;
        return decide();
    }
    return decide();
}
 function digits(n, b,sum=n,arr=[]){
    if (sum< b){
        arr.unshift(sum)
        return arr }
    sum/=b
    if (sum%1==0){
        arr.unshift(0)
    }
    else{
        arr.unshift((sum*b) - parseInt(sum)*b)
    }
    return digits(n,b,parseInt(sum),arr)
}
 function digits(n, b)
{
    let num = n.toString(b)
    let res = num.split('')
    return res
}
 function digits(n,b,res = []){
    function digmain(n,b,res){
        if(n == 0) return
        res.push(n % b)
        digmain(Math.floor(n/b),b,res)
    }
    digmain(n,b,res)
    return res.reverse()
}
 function digits(x, b, str = ''){
    if (x === 0) {
        str = str.split("");
        str = str.map((el) => +el)
        return str;
    }
    return digits((x - x % b) / b, b, str = x % b + str);
}
 function digits(n, b){
  return n.toString(b).split('')
}
 function digits(n, b) { return (n.toString(b)).split('').map(Number);}
 function digits(n,b,result=[]){
    if (n< b){
        result.push(n)
        return result.reverse()
    }
    result.push(n%b)
    return digits(Math.floor(n/b),b,result)
}
 function digits(n, b) {
    function d(A) {
        if (A[0] < b) return A;
        let m = A[0];
        A[0] = m%b;
        A.unshift(Math.floor(m/b));
        return d(A);
    }
    return d([n]);
}
 function digits(n, b){
    return n.toString(b).split('')
}
 function digits(n, b) {
    if(n < b)
        return [n];
    let a = digits((n - n%b)/b, b);
    a.push(n % b);
    return a;
}
 function digits(n,b,result=[]){
    if (n< b){
        result.push(n)
        return result.reverse()
    }
    result.push(n%b)
    return digits(Math.floor(n/b),b,result)
}
 function digits(n,b){
    if(n===0){
        return []
    }
    return [...digits((n-n%b)/b,b),n%b]    
}