有一个三位数,个位数比百位数大,而百位数比十位数大,并且各位数字之和等于各位数字相乘之积,求此三位数。
来源:4-13 编程练习
慕码人4339946
2020-12-02 17:17:59
# 具体遇到的问题
# 报错信息的截图
# 相关课程内容截图
# 尝试过的解决思路和结果
# 粘贴全部相关代码,切记添加代码注释(请勿截图)
for(var i=100;i<1000;i++){
var n=i.toString();
if(n[2]>n[0]&&n[0]>n[1]&&n[0]+n[1]+n[2])==n[0]*n[1]*n[2]){
document.write(i);
}
}
入代码,可通过选择【代码语言】突出显示
1回答
同学你好,代码无法运行出正确的结果,原因是if条件中,少写了一个括号,修改如下:

修改后,依旧无法打印出正确的结果,原因是i转成字符串之后,每一位都是字符串,而字符串进行加运算,会进行拼接,而不是求和,如下:

因此需要将每一位转成数字再进行加运算,如下:

祝学习愉快!
相似问题
回答 2
回答 1