课本P133,认真阅读变量的作用域,分清局部变量和全局变量,给下面的程序段注释写完整: def f1(): x = 5 return xx #x是?(局部变量/全局变量) def f2(): return xx #x是?(局部变量/全局变量) x = 10 #x是?(局部变量/全局变量) print(x) #打印结果是什么? print(f1()) #打印结果是什么? print(f2()) #打印结果是什么题目、【思考题】阿姆斯特朗数: 3位的阿姆斯特朗数称为水仙花数,代表每位数字的立方和还是该数;4位的阿姆斯特朗数称为四叶玫瑰数,代表每位数字的4次幂之和还是该数;5位的阿姆斯特朗数称为五角星数,代表每位数字的5次幂之和还是该数。用键盘输入一个【3,4,5】中的任意数字,求出对应位数的阿姆斯特朗数。 提示:def Armstrong(n)其中n代表位数。调用Armstrong(3),打印所有3位的水仙花数。(文件保存为H6-7.py 题目、【思考题】更多的田字格。函数grid(n)来打印n个田字格。输入2则输出如图所示更大的田字格(22的田字格)。(文件保存为H6-8.py) 【运行结果截图,结果最后有自己学号姓名的打印】 题目、【思考题】输出NN的方格矩阵。参考上一题(田字格)。如下所示,输入1(代表阶数),输出1个方格;输入2,输出一个22的方格;输入3,则输出33的方格。(文件保存为H6-9.py)
时间: 2024-02-19 07:59:48 浏览: 116
程序段注释:
```python
def f1():
x = 5 # x是局部变量
return x
def f2():
return x # x是全局变量
x = 10 # x是全局变量
print(x) # 打印结果是10
print(f1()) # 打印结果是5
print(f2()) # 打印结果是10
```
思考题1:阿姆斯特朗数
```python
def Armstrong(n):
for i in range(10**(n-1), 10**n):
s = 0
for j in str(i):
s += int(j)**n
if s == i:
print(i)
n = int(input("请输入3、4或5:"))
if n == 3:
Armstrong(3)
elif n == 4:
Armstrong(4)
elif n == 5:
Armstrong(5)
else:
print("输入错误!")
```
思考题2:田字格
```python
def grid(n):
for i in range(2*n+1):
if i % 2 == 0:
print("+ " + "- " * n + "+")
else:
print("| " + " " * n + "|")
n = int(input("请输入田字格数量:"))
grid(n)
```
思考题3:方格矩阵
```python
def square(n):
for i in range(n):
print("+ " + "- " * n + "+")
for j in range(n):
print("| " + " " * n + "|")
print("+ " + "- " * n + "+")
n = int(input("请输入阶数:"))
square(n)
```
运行结果截图见链接:https://img-blog.csdnimg.cn/20211018113703211.png
阅读全文