# 斐波那契数列 指1 1 2 3 5 8 13 21... f(n)=F(n-1)+f(n-2) 输出21次
f1 = 1
f2 = 1
for i in range(1, 22):
print('%12ld%12ld' % (f1, f2), end="") # 12ld是指输出12位的长整数
if (i % 3) == 0: # 控制斐波那契数列每行的显示数量
print('')
f1 = f1 + f2
f2 = f1 + f2
'''
for循环语句结构:
for 变量 in 序列:
代码块
range()函数用于生成一个自然数的序列,函数需要三个参数:起始位置(可以省略,默认0)、结束位置、步长(可省略,默认0)
while循环语句结构:
while 条件表达式:
代码块A
else:
代码块B
双重循环语句
while-for,在for-while,for-for,while-while
'''
# 求水仙花数,指一个三位数,各位数字的立方和等于该数本身
print("1000以内的水仙花数有:")
for n in range(100, 1000):
i = n // 100
j = n // 10 % 10
k = n % 10
if (i ** 3 + j ** 3 + k ** 3) == n:
print(n, end=' ')
# 求1!+2!+3!...+20!
print("1!+2!+3!...+20!的值为:")
j = 1
k = 0
for i in range(1, 21):
j = i * j
k = k + j
print(k)
# while循环语句
# 输出1 4 7 10 13 19..等差数列,输出数小于50
n = 2 # 定义循环变量
a1 = 1 # 定义首项
while True:
print(a1, "", end="")
a1 = 1 + (n - 1) * 3 # 计算an项的值
n = n + 1
if (a1 > 50):
break
# 1-100以内所有是3或5的倍数
i = 0
while i < 100:
i += 1
if i % 3 == 0 or i % 5 == 0:
print(i)
else:
print("end")
# 九九乘法表的实现
for i in range(1, 10):
for j in range(1, i + 1):
print("%d*%d=%2d" % (i, j, i * j), end=" ")
print(" ")
# 冒泡排序算法
a = [10, 2, 9, 5, 4]
times = len(a) - 1
while times > 0:
for i in range(times):
if a[i] > a[i + 1]:
a[i], a[i + 1] = a[i + 1], a[i]
times -= 1
print(a)
# 输出菱形上半部分
j = 4
for i in range(1, 7, 2):
print((j - 1) * ' ' + '*' * i)
j -= 1
# 输出菱形 百度答案
num = eval(input('请输入最多*所在行数:'))
a = num
b = num
for i in range(1, num + 1): # 上三角
print((a - 1) * ' ', (2 * i - 1) * '*')
a -= 1
for j in range(1, num): # 下三角
print(j * ' ', (2 * b - 3) * '*')
b -= 1
python学习-流程控制语句2
最新推荐文章于 2023-03-13 09:55:17 发布