2진수를 10진수로 변환하는 프로그램을 작성하시오?
2757 단어 beginnersbinaryjavascriptdecimal
app.js
let decimal = document.getElementById('decimal');
let binary = document.getElementById('binary');
let error = document.getElementById('error');
let binaryNumber = '';
let maxInputLength = 10;
binary.addEventListener('keypress', (e) => {
error.innerHTML = '';
if (binaryNumber.length == maxInputLength) {
error.innerHTML = `You can enter only ${maxInputLength} the length of the binary`;
return e.preventDefault();
}
if (!(e.key == 0 || e.key == 1)) {
error.innerHTML = 'Invalid key press';
binaryNumber.replace(e.key, '', '');
binary.value = binaryNumber;
e.preventDefault();
return false;
}
binaryNumber += e.key
decimal.innerHTML = binaryNumber;
})
let count = 0;
let decimalNumber = 0;
window.addEventListener('click', (e) => {
if (!binaryNumber.length) {
return e.preventDefault();
}
for (let j = binaryNumber.length; j > 0; j--) {
decimalNumber += Number(getDecimalNumber(j,Number(binaryNumber[count])))
count++;
}
decimal.innerHTML = decimalNumber;
decimalNumber = 0
})
function getDecimalNumber(count,binary) {
let n = 0;
switch (count) {
case 1: n = binary ? 1 : 0; break;
case 2: n = binary ? 2 : 0; break;
case 3: n = binary ? 4 : 0; break;
case 4: n = binary ? 8 : 0; break;
case 5: n = binary ? 16 : 0; break;
case 6: n = binary ? 32 : 0; break;
case 7: n = binary ? 64 : 0; break;
case 8: n = binary ? 128 : 0; break;
case 9: n = binary ? 256 : 0; break;
case 10: n = binary ? 512 : 0; break;
}
return n;
}
index.html
<!DOCTYPE html>
<html>
<body>
<h2 style="text-align: center">Binary to Decimal conversion</h2>
<div style="text-align: center">
<form>
<div id="decimal">0</div><br>
<input type="text" id="binary" style="width:300px;padding:10px;font-size:16px;font-weight: 500;">
<div style="font-size:10px;color:red" id="error"></div>
</form>
</div>
<script src="./app.js"></script>
</body>
</html>
참고: 페이지를 다시 로드하기 위해 한 번만 작동합니다.
Reference
이 문제에 관하여(2진수를 10진수로 변환하는 프로그램을 작성하시오?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/theamitprajapati/write-the-program-to-convert-the-binary-to-decimal--32bo텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)