Sha256: 111c4d09996328d987f9e873ee4eafea42ff97946785298069af2b8ca21634a5

Contents?: true

Size: 322 Bytes

Versions: 132

Compression:

Stored size: 322 Bytes

Contents

export default (n) => {
  if (n <= 0) {
    throw new Error('Only positive numbers are allowed');
  }

  const iterate = (number, step) => {
    if (number === 1) {
      return step;
    }

    return number % 2 === 0 ? iterate(number / 2, step + 1) : iterate((3 * number) + 1, step + 1);
  };
  return iterate(n, 0);
};

Version data entries

132 entries across 132 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.179 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.178 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.177 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.176 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.175 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.174 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.173 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.172 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.171 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.170 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.169 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.167 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.166 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.165 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.164 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.163 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.162 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.161 tracks/ecmascript/exercises/collatz-conjecture/example.js
trackler-2.2.1.160 tracks/ecmascript/exercises/collatz-conjecture/example.js