文章目录[隐藏]
易语言采用循环判断解决数学算法水仙花数问题
在100-999这些三位数中,有些数本身等于它百位上数字的立方加上十位上数字的立方加上个位上数字的立方,这样的三位数叫水仙花数。那么现在我们就要来找出这些三位数。
根据水仙花数的特点: 我们只要将100-999这些三位数按照下面的规律逐个比较就可以了。
比如:153=1的3立方+5的立方+3的立方,那么这个数就是水仙花数。
通过上面规律可以推导出结果。
源码:
窗口放置一个编辑框来显示结果,编辑框设置为多行显示。鉴于运算速度,我们这里演示了100-999.
.版本 2 .子程序 _计算图形按钮_被单击 .局部变量 循环变量, 整数型, , , 循环中的计数变量 .局部变量 百位数, 整数型, , , 存放百位上的数字 .局部变量 十位数, 整数型, , , 存放十位上的数字 .局部变量 个位数, 整数型, , , 存放个位上的数字 ' 先将结果编辑框中的内容清空 结果编辑框.内容 = “” ' 第一个三位数 循环变量 = 100 ' 从100到999中的三位数中寻找水仙花数 .判断循环首 (循环变量 < 1000) ' 取出这个三位数中百位上的数 百位数 = 循环变量 \ 100 ' 取出这个三位数中十位上的数 十位数 = (循环变量 % 100) \ 10 ' 取出这个三位数中个位上的数 个位数 = 循环变量 % 10 ' 判断这个数是否等于各个位上的数的立方和 .如果真 (循环变量 = 百位数 × 百位数 × 百位数 + 十位数 × 十位数 × 十位数 + 个位数 × 个位数 × 个位数) 结果编辑框.加入文本 (到文本 (循环变量), “,”) .如果真结束 ' 下一个三位数 循环变量 = 循环变量 + 1 .判断循环尾 ()