程序填空题:递归法将一个正整数的各位依次输出 - 实验13 从前有座山, 山里有座庙 - 《Python编程基础及应用实验教程》 - 高教社
一个正整数n,如果是个位数,直接输出n就完成了任务,这是基例。如果n是多位数,可以把n视为“个位数”和“个位之外的其余各位数”两部分构成。其中,“个位数”的值为n%10,“个位之外的其余各位数”的值为n//10。如此,问题求解变成输出n%10后,再把n//10的各位数字依次输出(递归调用),这是链条。
<br>
请将下述程序补充完整,使其可以正常运行。
python
#低位在前,高位在后
def myprint1(n):
if : #基例
print(n,end = ' ')
else: #链条
print(n % 10, end = ' ')
myprint1()
#高位在前,低位在后
def myprint2(n): #基例
if n // 10 == 0:
print(n,end = ' ')
else: #链条
myprint2()
print(, end = ' ')
myprint1(345)
print()
myprint2(345)
期望的执行结果为:
5 4 3
3 4 5
<br>**拼尽全力还是不会?参考B站习题讲解**<br>
哔哩哔哩up主:[海洋饼干叔叔](https://space.bilibili.com/384177380) [Python课程](https://www.bilibili.com/video/BV1kt411R7uW/)
[Python习题](https://www.bilibili.com/video/BV1iL411t7UZ/)
[简洁的C和C++](https://www.bilibili.com/video/BV1it411d7zx/)
作者每天分享一篇关于C/C++/Python的技术文章,学习编程不迷路。
![image.png](~/7c4cfd2d-8e3e-40cd-826d-299d4200e600.png)
答案:
第1空:n // 10 == 0
第2空:n // 10
第3空:n // 10
第4空:n % 10
<br>
请将下述程序补充完整,使其可以正常运行。
python
#低位在前,高位在后
def myprint1(n):
if : #基例
print(n,end = ' ')
else: #链条
print(n % 10, end = ' ')
myprint1()
#高位在前,低位在后
def myprint2(n): #基例
if n // 10 == 0:
print(n,end = ' ')
else: #链条
myprint2()
print(, end = ' ')
myprint1(345)
print()
myprint2(345)
期望的执行结果为:
5 4 3
3 4 5
<br>**拼尽全力还是不会?参考B站习题讲解**<br>
哔哩哔哩up主:[海洋饼干叔叔](https://space.bilibili.com/384177380) [Python课程](https://www.bilibili.com/video/BV1kt411R7uW/)
[Python习题](https://www.bilibili.com/video/BV1iL411t7UZ/)
[简洁的C和C++](https://www.bilibili.com/video/BV1it411d7zx/)
作者每天分享一篇关于C/C++/Python的技术文章,学习编程不迷路。
![image.png](~/7c4cfd2d-8e3e-40cd-826d-299d4200e600.png)
答案:
第1空:n // 10 == 0
第2空:n // 10
第3空:n // 10
第4空:n % 10