【问题标题】:Separating digits of a number分隔数字的数字
【发布时间】:2020-10-13 19:31:27
【问题描述】:

我正在编写一个程序来接收一个正数并分别输出每个数字。例如,如果输入为 692,则程序应输出 2、9、6。

我必须使用 while 循环并使用模运算符 (%) 分隔数字。

不将数字视为字符串并以数学方式分隔数字。

代码:

HTML

<div class="column1">
    <div class="input">
      <button onclick="problem_09()"> Run the program </button>
    </div>
    <strong><p id="output"> </p></strong>
</div>

JAVASCRIPT

function problem_09() {
    var outputObj = document.getElementById("output");
    var a = parseInt(prompt("Please enter a number: ", ""));
    var digits = "";

    while(a >= 0){
        var d = a % 10;
        outputObj.innerHTML= "number: "+a+"<br><br>its digits: " + d;
        a = Math.floor(a/10);
    }
  
    outputObj.innerHTML = outputObj.innerHTML + "<br><br>" + "program ended";
    document.getElementsByTagName("button")[0].setAttribute("disabled","true");
}

【问题讨论】:

  • 我想你忘了问一个问题。

标签: javascript html arrays math solution


【解决方案1】:

解决办法如下:

HTML:

<div class="column1">
    <div class="input">
      <button onclick="problem_09()"> Run the program </button>
    </div>
    <strong><div id="output"> </div></strong>
  </div>

JS:


function problem_09() {
  var outputObj = document.getElementById("output");
  var a = parseInt(prompt("Please enter a number: ", ""));
  var digit = "";
  outputObj.innerHTML = ""
  while(a > 0){
    let num = a%10
    a = Math.floor(a/10)
    digit += "<p>"+num+"</p>"
  }
  outputObj.innerHTML = digit + "<br><br>" + "program ended";
  document.getElementsByTagName("button")[0].setAttribute("disabled","true");
}

工作代码笔:https://codepen.io/TheKetan2/pen/rNLOrGR

输出:

【讨论】:

  • 数字应该分开,而不是将数字视为字符串并以数学方式。你知道其他方法吗?
  • 您的解决方案似乎也可以正常工作。是否显示任何错误?
  • 它只输出数字的第一位。例如当我输入 455 时,它会输出 number:4, digits:4。
  • 请查看更新后的答案。添加了完整的工作演示。
【解决方案2】:

从数学上讲,取余数以 10 为模,然后除以 10。在简单的代码中,

num = some number
while (num>0):
    print(num%10)
    num = num/10

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-30
    • 1970-01-01
    • 1970-01-01
    • 2011-02-20
    • 2020-09-19
    • 2014-10-29
    • 2023-01-11
    • 1970-01-01
    相关资源
    最近更新 更多