使用javascript显示我的号码时遇到问题



我必须从十进制转换为二进制,它至少需要 3 个函数,并且必须以 HTML 显示。这就是我到目前为止所拥有的,无法弄清楚如何使其正确显示?

// Prompt user for number between 1-1000
let input = parseInt(prompt("Enter a number between 1 and 1000", "50"));
function store() {
let quotient = [];
let answer = quotient.reverse();
return answer;
}
function check() {
while (input != 0) {
if (input < 1000 && input % 2 != 0) {
return quotient.push("1");
input = input / 2;
}
else if (input < 1000 && input % 2 == 0) {
return quotient.push("0");
input = input / 2;
}
}
}
function display() {
document.getElementById("displayNumber").innerHTML = answer;
}
display();
<h1 id="displayNumber"></h1>

这是固定脚本,希望对您有所帮助。

function check(input, quotient) {
while (input != 0) {
if (input < 1000 && input % 2 != 0) {
quotient.push("1");
input = parseInt(input / 2);
}else if (input < 1000 && input % 2 == 0) {
quotient.push("0");
input = parseInt(input / 2);
}
}
}
function display() {
let input = parseInt(prompt("Enter a number between 1 and 1000", "50"));
let quotient = [];
check(input, quotient);
let answer = quotient.reverse().join('');
document.getElementById("displayNumber").innerHTML = answer;
}
display();

目前,您只是创建函数storecheck,但实际上并没有调用它们。

但是,如果您只想将输入显示为二进制,则可以使用toString函数,传入所需的基数。

如果数字超出 1-1000 的范围,我不确定要显示什么。所以我只是输入"无效输入"。您可以添加更多检查,以确定它是否是 NAN 等

<!DOCTYPE html>
<html>
<h1 id="displayNumber"></h1>
<script>
// Prompt user for number between 1-1000
let input = parseInt(prompt("Enter a number between 1 and 1000", "50"));

function display() {
if (input < 1 || input > 1000) {
document.getElementById("displayNumber").innerHTML = "Invalid input";
} else {
document.getElementById("displayNumber").innerHTML = input.toString(2);
}
}
display();
</script>
</html>

这是更新的代码片段:

		function check(input) {
	let quotient = [];
while (input != 0) {
if (input < 1000 && input % 2 != 0) {
input = input / 2;
}
else if (input < 1000 && input % 2 == 0) {
input = input / 2;
}
quotient.push(input);
}
return quotient;
}

function display() {
let input = parseInt(prompt("Enter a number between 1 and 1000", "50"));
var answer = check(input);
document.getElementById("displayNumber").innerHTML = answer;         
}          
display();
<h1 id="displayNumber"></h1>

在显示函数中,您正在为innerHTML分配答案,但不调用您的检查函数。

<html> 
<h1 id="displayNumber"></h1>
<script>
let input = parseInt(prompt('Enter a number between 1 and 1000', '50'));
function check(input) {
let quotient = [];
while (input > 0) {
quotient.push(input % 2);
input = parseInt(input / 2);
}
return quotient.reverse().join('');
}
function display() {
if (input >= 1 && input <= 1000) {
document.getElementById("displayNumber").innerHTML = check(input);
}
}
display();
</script>
</html>

相关内容

  • 没有找到相关文章

最新更新