请老师解答

请老师解答

<!DOCTYPE html>

<html>


<head lang="en">

<meta charset="UTF-8">

<title>水仙花数</title>

</head>


<body>

<script>

for (var x = 100; x < 1000; x++) {

var a = parseInt(x / 100),

b = parseInt(x / 10 % 10),

c = parseInt(x % 10)

if (x = a * a * a + b * b * b + c * c * c) { document.write(x + "<br>") }


}

</script>

</body>


</html>


正在回答

登陆购买课程后可参与讨论,去登陆

3回答

你好同学 ,总体理解的是对的 . 需要注意两点 , 

一是取余按照数学的方式分析 .例如153%100意思是取153除以100的余数 . 153除以100 ,商为1余数为53 ,所以结果就是53 . 

二是变量b也是需要取整的 ,这个同学在自己分析的第二条也说过了"然后/10=5.3 parseint取整数,得到5. " . c可以不加parseint .

希望解答了你的疑惑 , 祝学习愉快  ,望采纳 .

好帮手慕夭夭 2019-02-26 18:43:47

你好同学 ,你的思路是可以的 . 但是实现的效果不对 .获取十位数计算的公式有问题 ,  如下修改 :

http://img1.sycdn.imooc.com//climg/5c75184b0001a5f908610381.jpg

希望能够解答你的疑惑 , 祝学习愉快 ,望采纳 .

  • 提问者 慕前端2064318 #1
    老师,还是对于取余数这方面有点理解的不透彻,我把我的思路说一下,请您看看是否正确。 第一 a/100 得到的是一个个位数+小数点比如153/100=1.53,parseint 自然取整数,得到的是一个整数,即百位数。 第二 b%100以后是 相当于(100+53)-100=53这个数值,然后/10=5.3 parseint取整数,得到5. 第三 c是取各位数值 153/10=15.3 取得是剩余.3的值,变为整数3。 以上是我的思路,请老师验证一下,我理解的是否正确?还有一个问题,取余以后得到是一个整数,parseint的效果一样,是不是存才重复操作的问题呢?是否去掉 parseint也是可以的呢?(仅限B 和c)
    2019-02-27 11:54:55
提问者 慕前端2064318 2019-02-26 17:25:18

问题1:这样写代码正确吗?

问题2:parseint目的应该是取值,分别针对个、十、百取值,但是我总觉得各位数和十位数不太正确

问题3:我看了一下输出的结果,并没有153这个数字

麻烦老师帮忙解答一下,谢谢!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星

相似问题

登录后可查看更多问答,登录/注册

前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师