Python习题练习5--99乘法表

题目:打印出一个99乘法表

for i in range(1,10):    #定义一个i的for循环
    for j in range(1,i+1):   #定义一个j的for循环
        print("%d*%d=%d "%(j,i,i*j),end="")   #打印i*j=(i*j)的样式,end""的作用是表示还没有结束现在还不用换行
    print("")  #在执行完一次j的循环后进行换行,print()本身就有换行的作用,所以这里可以省略里面的(/n),也可以直接写成print()

打印结果为:

Python习题练习5--99乘法表_第1张图片

解题思路:

1、先遍历i的循环,确定每行的1-9的数

for i in range(1,10):   #遍历1-9的值
    print(i)   #打印结果

打印结果为:

Python习题练习5--99乘法表_第2张图片

 2、这时候观察99乘法表,因为i已经实现了每行的一个固定值,还需要在不同的每行都需要有个数和他相乘,第一个行就是1*1 第二行就是1*2 和 2*2,因为i已经可以确定每行是要乘几了,所以在定义一个变量j,在不同的时候和i相乘,就是当i进入到1的循环时,j只能输出1,当i进入到2的循环是,j只能输出1和2,以此类推,当i输出到9时,j只能输出1-9,所以这就能确定j的遍历范围了,因为是随着i变化的,所以j的范围就是range(1,i+1),这里为啥是i+1呢?因为在让中,是前闭后开的,所以范围是想要范围是1到i,在range()函数中就要写成1,i+1。然后让他两相乘看下结果。

for i in range(1,10):   #定义一个i的for循环
    for j in range(1,10):   #根据i的for循环,定义一个j的for循环
         print("%d*%d=%d "%(j,i,i*j))   ##打印i*j=(i*j)的样式

输出结果为:

Python习题练习5--99乘法表_第3张图片

 这样能看出所有需要的数据已经都出来了现在需要调节下样式。

3、这时先让他不进行换行,保持在一行输出,因为print默认会执行换行,所以这时候就可以在print()里加上end="",end=""的作用就是表示还没有结束,不执行换行操作。现在再打印看下结果。

for i in range(1, 10):  # 定义一个i的for循环
    for j in range(1, i + 1):  # 定义一个j的for循环
        print("%d*%d=%d " % (j, i, i * j), end="")  # 打印i*j=(i*j)的样式,end=""的作用是表示还没有结束现在还不用换行

Python习题练习5--99乘法表_第4张图片

 这时候就变成一行的输出了,那怎么才能变成让他按着需求进行换行呢?

4、现在就简单了,因为这个是根据i进行每行的数据打印的,所以在每次在i要进行遍历时,进行换行就行了。

for i in range(1, 10):  # 定义一个i的for循环
    for j in range(1, i + 1):  # 定义一个j的for循环
        print("%d*%d=%d " % (j, i, i * j), end="")  # 打印i*j=(i*j)的样式,end=""的作用是表示还没有结束现在还不用换行
    print("")  # 在执行完一次j的循环后进行换行,print()本身就有换行的作用,所以这里可以省略里面的(/n),也可以直接写成print()

打印结果为:

Python习题练习5--99乘法表_第5张图片

        这样就解决了用python输出99乘法表的问题了,对于这个题目还有好几种不同的解法,大家可以尝试用其他方法再试试


  下图为公众号二维码,内容会同步发出,大家可以关注一起学习

                                                                                               

这个是张狗子小哥哥的公众号,会分享一些平时的工作心得,可以关注看下。

                                                                                                

你可能感兴趣的:(Python练习题,python,开发语言,后端)