一个整数n的阶乘可以写成n!
,它表示从1到n这n个整数的乘积。阶乘的增长速度非常快,例如,13!
就已经比较大了,已经无法存放在一个整型变量中;而35!
就更大了,它已经无法存放在一个浮点型变量中。因此,当n比较大时,去计算n!
是非常困难的。幸运的是,在本题中,我们的任务不是去计算n!
,而是去计算n!
最右边的那个非0的数字是多少。例如,5! = 1*2*3*4*5 = 120
,因此5!
最右边的那个非0的数字是2。再如:7! = 5040
,因此7!
最右边的那个非0的数字是4。请编写一个程序,输入一个整数n (n <= 100),然后输出n!
最右边的那个非0的数字是多少。
输入只有一个整数n
。
输出只有一个整数,即n!
最右边的那个非0的数字。
6
2
综合使用for
和while
编写
一个整数的“反置数”指的是把该整数的每一位数字的顺序颠倒过来所得到的另一个整数。如果一个整数的末尾是以0结尾,那么在它的反置数当中,这些0就被省略掉了。比如说,1245的反置数是5421,而1200的反置数是21。请编写一个程序,输入两个整数,然后计算这两个整数的反置数之和sum
,然后再把sum
的反置数打印出来。
输入只有一行,包括两个整数,中间用空格隔开。
输出只有一行,即相应的结果。
435 754
199
- 由于在本题中需要多次去计算一个整数的反置数,因此必须把这部分代码抽象为一个函数的形式。
- 使用2种不同的方法完成(即编写2种不同的生产反置数函数),以下方法可供参考:
- 复杂版(适用于其他一般编程语言):使用
while
和数学上的计算 - 简易版(Python独有):字符串在Python中近似于一个列表List,列表倒序