题干:判断一个三位数是否是水仙花数:三位数用随机数生成
水仙花数的特点:这个数本身==这个数的个位数的立方+十位数的立方+百位数的立方
思路:
1.生成一个三位数的随机数
2.将三位数的个位十位百位表示出来
3.用if条件语句表示
【难点:以407为例】
个位:num%10 取余--40.7取7 得到个位
十位: ① num/10得到 40.7
②取整:~~(num/10)后得到40
③取余: 40%10 最终得到十位数0
百位:①num/100 得到4.07
②取整~~(num/100) 得到4
如此三位数字都可得出
<script>
//判断一个三位数是否是水仙花数:三位数用随机数生成
//水仙花数的特点:这个数本身==这个数的个位数的立方+十位数的立方+百位数的立方
var num =~~(Math.random()*(999-100)+100);
//var num = 407; 测试
console.log(num);
var ge = num%10;
var bai = ~~(num/100);
var shi = (~~(num/10))%10;
console.log(ge,shi,bai);
if (ge**3+shi**3+bai**3===num) {
console.log('是水仙花数');
} else {
console.log('不是水仙花数');
}
</script>
测试结果如下:由于三位数的水仙花数只有四个,这里以407为例
随机时: