function hitungNomorBit(angka, nomorBit) {
// Konversi manual dari desimal ke biner
let biner = "";
let temp = angka;
if (temp === 0) {
biner = "0";
} else {
while (temp > 0) {
biner = (temp % 2) + biner;
temp = Math.floor(temp / 2);
}
}
// Cari posisi bit yang bernilai 1
let posisiBit = [];
for (let i = biner.length - 1; i >= 0; i--) {
if (biner[i] === '1') {
posisiBit.push(biner.length - 1 - i);
}
}
if (nomorBit === 0 && posisiBit.length > 1) {
return 1;
} else if (nomorBit === 1 && posisiBit.length > 2) {
return posisiBit[2];
} else {
return null;
}
}
console.log(hitungNomorBit(13, 0));
console.log(hitungNomorBit(13, 1));
console.log(hitungNomorBit(13, 2));
ZnVuY3Rpb24gaGl0dW5nTm9tb3JCaXQoYW5na2EsIG5vbW9yQml0KSB7CiAgICAvLyBLb252ZXJzaSBtYW51YWwgZGFyaSBkZXNpbWFsIGtlIGJpbmVyCiAgICBsZXQgYmluZXIgPSAiIjsKICAgIGxldCB0ZW1wID0gYW5na2E7CiAgICAKICAgIGlmICh0ZW1wID09PSAwKSB7CiAgICAgICAgYmluZXIgPSAiMCI7CiAgICB9IGVsc2UgewogICAgICAgIHdoaWxlICh0ZW1wID4gMCkgewogICAgICAgICAgICBiaW5lciA9ICh0ZW1wICUgMikgKyBiaW5lcjsKICAgICAgICAgICAgdGVtcCA9IE1hdGguZmxvb3IodGVtcCAvIDIpOwogICAgICAgIH0KICAgIH0KICAgIAogICAgLy8gQ2FyaSBwb3Npc2kgYml0IHlhbmcgYmVybmlsYWkgMQogICAgbGV0IHBvc2lzaUJpdCA9IFtdOwogICAgZm9yIChsZXQgaSA9IGJpbmVyLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgaWYgKGJpbmVyW2ldID09PSAnMScpIHsKICAgICAgICAgICAgcG9zaXNpQml0LnB1c2goYmluZXIubGVuZ3RoIC0gMSAtIGkpOwogICAgICAgIH0KICAgIH0KICAgIAogICAgaWYgKG5vbW9yQml0ID09PSAwICYmIHBvc2lzaUJpdC5sZW5ndGggPiAxKSB7CiAgICAgICAgcmV0dXJuIDE7IAogICAgfSBlbHNlIGlmIChub21vckJpdCA9PT0gMSAmJiBwb3Npc2lCaXQubGVuZ3RoID4gMikgewogICAgICAgIHJldHVybiBwb3Npc2lCaXRbMl07CiAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBudWxsOwogICAgfQp9Cgpjb25zb2xlLmxvZyhoaXR1bmdOb21vckJpdCgxMywgMCkpOwpjb25zb2xlLmxvZyhoaXR1bmdOb21vckJpdCgxMywgMSkpOwpjb25zb2xlLmxvZyhoaXR1bmdOb21vckJpdCgxMywgMikpOw==