Python使用循环完成九九乘法表

2020-02-07  本文已影响0人  早_wsm

一、程序的三大流程

二、while循环的基本应用

# 写好初始条件
i = 1
# 开始循环
while i <= 5:
    # 满足条件后执行的代码
    print("早盦呀是个很棒的UP主")
    # 处理计数器
    i += 1

执行一下结果:


image

注意python的代码规范

# 定义最终结果的变量
sum = 0
# 定义一个整数的变量记录循环的次数
i = 0
# 开始循环
while i <= 100:
    sum += i
    # 处理计数器
    i += 1
print('0到100间的和为: %d' % sum)

调试一下并验证结果


image
# 定义一个整数的变量记录循环的次数
i = 0
# 开始循环
while i <= 100:
    # 使用嵌套if做偶数的判断
    if i % 2 == 0:
        sum += i
    # 处理计数器
    i += 1
print('0到100间的所有偶数的和为: %d' % sum)

再进行验证


image

要注意代码的规范与运算符的使用等,总之要细心

三、break和continue

# 定义一个整数的变量记录循环的次数
i = 0
# 开始循环
while i <= 100:
    # 构思带七及含七倍数的数字特点,把他们都找到
    if (i % 7 == 0
            or i % 10 == 7
            or i // 10 == 7):
        # 处理计数器,这里至关重要,如果不存在这个计数器会造成死循环
        i += 1
        # 使用continue跳过所有带七及含七倍数的数字
        continue
    # 把其他情况打印出来
    else:
        print(i)
    # 处理计数器
    i += 1
image

相对于while循环,这里使用for循环会更容易一些,但要引用range()函数

for i in range(1, 101):
    if (i % 7 == 0
            or i % 10 == 7
            or i // 10 == 7):
        continue
    else:
        print(i)

可自行尝试使用并观察
简单修改一下条件并使用break:

# 定义一个整数的变量记录循环的次数
i = 0
# 开始循环
while i <= 100:
    # 构思带七及含七倍数的数字特点,把他们都找到
    if i == 7:
        # 处理计数器,这里至关重要,如果不存在这个计数器会造成死循环
        i += 1
        # 使用continue跳过所有带七及含七倍数的数字
        break
    # 把其他情况打印出来
    else:
        print(i)
    # 处理计数器
    i += 1
image

可以看到在满足条件后,break变终止了循环。

四、打印九九乘法表

这里会涉及使用嵌套循环、print()函数扩展知识、内循环与外循环搭配等......

先练习打印九行小*

# 定义一个整数的变量记录循环的次数
row = 1
# 开始外循环打印列
while row <= 9:
    # 确定内循环打印行
    col = 1
    while col <= row:
        # 这里用到print()函数扩展,print("",end="连接下一行的内容")这样写可做到不自动换行
        print("*",end="")
        col += 1
    # 因为上一个print()函数内已包含end=的用法,所以这里为避免所输出的内容在同一行要加print("")做换行处理
    print("")
    # 处理计数器
    row += 1
image

完成九九乘法表的书写:

# 定义一个整数的变量记录循环的次数
row = 1
# 开始外循环打印列
while row <= 9:
    # 确定内循环打印行
    col = 1
    while col <= row:
        # 这里用到print()函数扩展,print("",end="连接下一行的内容")这样写可做到不自动换行
        # print("*",end="")
        # 九九乘法表变身
        print("%d * %d = %d " % (col,row,row*col), end=" ")
        col += 1
    # 因为上一个print()函数内已包含end=的用法,所以这里为避免所输出的内容在同一行要加print("")做换行处理
    print("")
    # 处理计数器
    row += 1

这样我们就获得了一个九九乘法表的代码,仔细观察打印*与打印乘法表的代码,区别只是改了一行代码,乘法表使用列号乘以行号才完成实现的,为了输出美观,要注意end=" "中以空格分开列

image
但是细心的人会发现我们打印出的乘法表存在对不齐的情况,所以要进一步完善一下
要保证每一列都能对齐,我们要引用转义符、换行符

下面做简单演示:

print("1\t2\t3")
print("10\t20\t30")
image

通过思考我们可以准确的找到需要修改的地方是print("%d * %d = %d " % (col,row,row*col), end=" "),最终修改为: print("%d * %d = %d " % (col,row,row*col), end="\t")

上一篇下一篇

猜你喜欢

热点阅读