#szsc4b. 小杨的幸运数
小杨的幸运数
小杨在数学兴趣小组里认识了一种有趣的数,他把它叫作“幸运数”。一个正整数如果同时满足下面两个条件,就是幸运数:
(1)它正着读和倒着读完全一样,例如 8、44、121、1331;
(2)它各个数位上的数字之和是偶数,例如 121 的数位之和 1+2+1=4 是偶数。
所以 22、121、1331 都是幸运数;而 7(数位之和 7 是奇数)、131(数位之和 1+3+1=5 是奇数)、123(正着读和倒着读不一样)都不是幸运数。
请编写程序帮小杨数一数:从整数 L 到整数 R(包括 L 和 R)之间一共有多少个幸运数,其中最大的幸运数又是多少?
样例舞台效果如下图:

输入描述
新建变量“L”,表示区间的左端点。
新建变量“R”,表示区间的右端点。
数据范围:1≤L≤R≤2000。
输出描述
新建变量“个数”,表示从 L 到 R 之间(包括 L 和 R)幸运数的个数。
新建变量“最大值”,表示这些幸运数中最大的那一个;如果区间里一个幸运数也没有,“最大值”记为 0。
编程提示
- 用一层循环从 L 数到 R,把每个数依次检查一遍。判断“正着读和倒着读一样”可以借助字符串:第 1 个字符与最后 1 个字符、第 2 个与倒数第 2 个……都相同即可。
- 逐个取字符的同时把数字累加起来,就得到数位之和。两个条件都成立,才算幸运数。
- 遇到幸运数就把“个数”增加 1,并把它记进“最大值”。因为是从小到大枚举的,最后记下的那个就是最大的幸运数。
- 第二组样例里 494 正着读和倒着读一样,但数位之和 4+9+4=17 是奇数,并不是幸运数,所以最大值是 484。
- 可以把“判断一个数是不是幸运数”做成一个自制积木反复调用,程序会更清楚;不用自制积木同样得分。
- 变量名的拼写要和题目完全一致。输入变量由系统在运行时给出,不要使用【询问并等待】积木,也不要在程序中修改“L”和“R”。
输入样例
L = 1
R = 100
输出样例
个数 = 13
最大值 = 99
输入样例
L = 100
R = 500
输出样例
个数 = 20
最大值 = 484