python基础作业:利用循环和end参数分别实现打印九九乘法表、三角形图形、寻找水仙花数、寻找完美数

简介: python基础作业:利用循环和end参数分别实现打印九九乘法表、三角形图形、寻找水仙花数、寻找完美数

1、end参数的了解


python里的end是print函数中的参数,为末尾end传递一个字符串,这样print函数不会在字符串末尾添加一个换行符,而是添加一个字符串,其实这也是一个语法要求,表示这个语句没结束。


print()函数不加end参数则默认换行

a308499a67f5446b94c1030575d4096a.png


print()函数中加上end参数默认不换行


c85271dc09594493961e4152ded06b5a.png


2、打印九九乘法表


1、写出基本代码


1. while i<=9:
2.     j=1
3. while j<=i:
4. print(f'{j}*{i}={i*j}')
5.         j+=1
6.     i+=1


运行程序,发现九九乘法结果为竖直排版,为了使排版整齐美观,在print(f'{j}*{i}={i*j}')中加入参数end='\t'


16b8a7ef4b564fd79cf619dfddee4906.png


2、加入end参数


5f1babe679d24a9cbb22ad07dc128d7e.png


end参数虽然取消了print()的换行,但是一整排的九九乘法仍不美观,于是在每次内循环结束后进行换行。



3、在内循环结束后进行换行

781e6af0437d4cc6877f78e97da36116.png


换行时用print()而不用print('\n')的原因:print()参数中默认换行,如果加入在print()函数中加入换行符'\n'表示进行两次换行。


10e9a1fec5f4422c83a24428fd76b893.png60b2319138c940738538dd4430ede475.png


4、具体代码如下

'''
1、打印九九乘法表
'''
i=1
while i<=9:
    j=1
    while j<=i:
        print(f'{j}*{i}={i*j}',end='\t')# end='\t' 用来调整距离,使排版美观
        j+=1
    print()
    i+=1


三、打印三角形图形


1、打印左下三角形


1.1 代码演示

1ea2eeccf6aa4a1ba36893159228d1ea.png

1.2 具体代码如下


#打印左下三角形
def under_left():
    bian=int(input('请输入三角形的边长:'))
    i=1
    while i<=bian:
        print('*'*i)# 重复输出
        i+=1
under_left()

2、 打印左上三角形


2.1 代码演示

287ca08e8b954836a7238363a0b3d326.png


2.2 具体代码如下


1. #打印左上三角形
2. def on_left():
3.     bian=int(input('请输入三角形的边长:'))
4.     while bian>0:
5. print('*'*bian)
6.         bian-=1
7. on_left()


3、打印右下三角形


3.1 代码演示

1c745b2553b140518349bb4ea1068cfa.png



3.2 具体代码如下

#打印右下三角形
def under_right():
    bian = int(input('请输入三角形的边长:'))
    i=1
    while i<=bian:
        print(' '*(bian-i),end='')
        print('*'*i)
        i+=1
under_right()


4、打印右上三角形


4.1 代码演示

fa9f9e08c7d948e98985663057dc5e97.png


4.2 具体代码如下

#打印右上三角形
def on_right():
    bian = int(input('请输入三角形的边长:'))
    i=bian
    while bian>0:
        print('*'*bian)
        bian-=1
        print(' ' * (i - bian), end='')
on_right()


四、寻找水仙花数


1、水仙花数的概念

水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。


例如:1^3 + 5^3+ 3^3 = 153。


2、代码演示

4c244b2ccc9d4b4fa3e461bd55c5042a.png



3、具体代码如下

'''
寻找水仙花数
'''
def Narcissistic_number():
    range1,range2=map(int,input('请输入你寻找水仙花数的范围(不能超过四位数):').split())
    #在(range1,range2)的范围内寻找水仙花数
    for i in range(range1,range2+1):
        first=(i//1)%10  #取出个位数
        second=(i//10)%10  #取出十位数
        thir=(i//100)%10   #取出百位数
        if first**3+second**3+thir**3==i:
            print(i)
Narcissistic_number()



五、寻找完美数


1、完美数的概念

完美数(Perfect Number),又称“完全数”“完备数”或“完满数”,它的定义是除其本身以外全部因数之和等于本身的数,这个定义看起来拗口,不如我们举两个例子: 最小的两个完美数就是6(其全部因数为1、2、3、6)和28(其全部因数为1、2、4、7、14、28),它们均是除其本身外各因数的和:6=1+2+3和28=1+2+4+7+14。


这些数都有一些神奇的特性,因此科学家们赋予它们一个美好的名字—— 完美数。



2、代码演示

4a8d1e579b1643a68c503f0dedf15648.png


3、具体代码如下

'''
寻找完美数
'''
def prefect_number():
    #输入寻找完美数的范围
    range1,range2 = map(int,input('请输入寻找完美数的范围:').split())
    for i in range(range1,range2+1):
        sum = 0
        for j in range(1,i):
            if i%j==0:  #判断j是否为完美数的因子
                sum+=j  #sum进行累加
        if sum==i:      #是,则输出完美数
            print(i)
prefect_number()
相关文章
|
8月前
|
算法 Java Docker
(Python基础)新时代语言!一起学习Python吧!(三):IF条件判断和match匹配;Python中的循环:for...in、while循环;循环操作关键字;Python函数使用方法
IF 条件判断 使用if语句,对条件进行判断 true则执行代码块缩进语句 false则不执行代码块缩进语句,如果有else 或 elif 则进入相应的规则中执行
1467 1
|
11月前
|
Python
Python中的循环可以嵌套使用吗?
Python中的循环可以嵌套使用吗?
541 57
|
机器学习/深度学习 算法 关系型数据库
Python循环进阶:嵌套与控制的深度解析
本文深入探讨Python中嵌套循环的原理与应用,从数学模型到工程实践全面解析。内容涵盖嵌套循环的本质(如笛卡尔积实现、变量作用域)、精细控制技巧(如break/continue、迭代器协议、异常处理),以及性能优化策略(预计算、向量化等)。同时结合树形结构遍历、动态规划、游戏开发等典型场景,提供最佳实践建议。掌握这些技巧,助你突破编程瓶颈,实现复杂问题的优雅解决。
387 6
|
存储 Shell 开发者
Python用户输入与While循环
本文介绍了Python中用户输入与while循环的结合使用,通过`input()`函数获取用户输入,并利用while循环实现重复操作,如创建交互式程序或用户驱动的循环。示例代码展示了如何让用户输入数字并计算总和,直到输入指定退出命令。这种组合能帮助开发者构建强大的交互式Python应用。
377 1
|
开发工具 Python
[oeasy]python043_自己制作的ascii码表_循环语句_条件语句_缩进_indent
本文介绍了如何使用Python制作ASCII码表,回顾了上一次课程中`print`函数的`end`参数,并通过循环和条件语句实现每8个字符换行的功能。通过调整代码中的缩进,实现了正确的输出格式。最后展示了制作完成的ASCII码表,并预告了下一次课程的内容。
279 2
|
Python
在 Python 中实现各种类型的循环判断
在 Python 中实现各种类型的循环判断
455 2
|
Python
Python 中,循环判断
Python 中,循环判断
377 1
|
Python
Python 循环语句的高级应用与深度探索
本文深入探讨了Python中循环语句的高级应用,包括`for`循环遍历字典获取键值、同步遍历多个序列,以及`while`循环结合条件判断和异常处理。通过嵌套循环实现了矩阵乘法,并介绍了如何优化循环以提升程序性能。示例代码展示了这些技术的实际应用。
226 15
|
人工智能 Python
[oeasy]python039_for循环_循环遍历_循环变量
本文回顾了上一次的内容,介绍了小写和大写字母的序号范围,并通过 `range` 函数生成了 `for` 循环。重点讲解了 `range(start, stop)` 的使用方法,解释了为什么不会输出 `stop` 值,并通过示例展示了如何遍历小写和大写字母的序号。最后总结了 `range` 函数的结构和 `for` 循环的使用技巧。
237 4
|
Java 索引 Python
【10月更文挑战第19天】「Mac上学Python 30」基础篇11 - 高级循环技巧与应用
本篇将介绍更深入的循环应用与优化方法,重点放在高级技巧和场景实践。我们将讲解enumerate()与zip()的妙用、迭代器与生成器、并发循环以及性能优化技巧。这些内容将帮助您编写更高效、结构更合理的代码。
231 5

推荐镜像

更多