convert any base to any base

This commit is contained in:
array-in-a-matrix 2022-02-09 14:45:11 -05:00
parent 375c3d8bbc
commit e7fbde164d
2 changed files with 25 additions and 13 deletions

View file

@ -7,6 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Number System Converter</title>
<link rel="stylesheet" href="/style/style.css" />
<link rel="icon" type="image/x-icon" href="/res/site/icons/favicon.ico">
<script src="./script/script.js"></script>
</head>
@ -23,17 +24,18 @@
<section>
<h3>Enter a decimal number to convert and a base.</h3>
<form>
<label for="number">Base 10 number:</label>
<label for="number">Number:</label><br>
<input name="number" id="number" type="text" step="1" onChange="numberSystemConverter();">
<br>
<input name="number" id="number" type="number" step="1" onChange="numberSystemConverter();">
<br>
<label for="base">New base (Range 2-36):</label>
<br>
<input name="base" id="base" type="number" value="2" step="1" min="2" max="36"
<label for="base">Base (Range 2-36):</label><br>
<input name="base" id="base" type="number" value="10" step="1" min="2" max="36"
onChange="numberSystemConverter();">
<br>
<label for="converted">Converted number:</label>
<label for="new-base">New base (Range 2-36):</label><br>
<input name="new-base" id="new-base" type="number" value="2" step="1" min="2" max="36"
onChange="numberSystemConverter();">
<br>
<label for="converted">Converted number:</label><br>
<input name="converted" id="converted" type="text" disabled="true" onChange="numberSystemConverter();">
</form>
</section>

View file

@ -1,12 +1,22 @@
numberSystemConverter();
function numberSystemConverter() {
num = parseInt(document.getElementById('number').value);
base = parseInt(document.getElementById('base').value)
let num = document.getElementById('number').value;
let base = document.getElementById('base').value;
let new_base = document.getElementById('new-base').value;
base = parseInt(base);
new_base = parseInt(new_base);
try {
new_num = num.toString(base)
document.getElementById('converted').value = new_num
console.log(`BASE 10:${num} ==> BASE ${base}: ${new_num}`);
let dec_num = parseInt(num, base);
let new_num = dec_num.toString(new_base);
document.getElementById('converted').value = new_num;
console.log(`BASE ${base}: ${num} ==> BASE ${new_base}: ${new_num}`);
} catch (RangeError) {
console.log(`Base is not in the range of 2 to 36.`);
console.log(`One or more bases is not in the range of 2 to 36.`);
}
};