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()
相关文章
|
13天前
|
安全
Python-打印99乘法表的两种方法
本文详细介绍了两种实现99乘法表的方法:使用`while`循环和`for`循环。每种方法都包括了步骤解析、代码演示及优缺点分析。文章旨在帮助编程初学者理解和掌握循环结构的应用,内容通俗易懂,适合编程新手阅读。博主表示欢迎读者反馈,共同进步。
|
1月前
|
开发工具 Python
[oeasy]python043_自己制作的ascii码表_循环语句_条件语句_缩进_indent
本文介绍了如何使用Python制作ASCII码表,回顾了上一次课程中`print`函数的`end`参数,并通过循环和条件语句实现每8个字符换行的功能。通过调整代码中的缩进,实现了正确的输出格式。最后展示了制作完成的ASCII码表,并预告了下一次课程的内容。
26 2
|
1月前
|
Python
在 Python 中实现各种类型的循环判断
在 Python 中实现各种类型的循环判断
33 2
|
1月前
|
Python
Python 中,循环判断
Python 中,循环判断
50 1
|
1月前
|
人工智能 Python
[oeasy]python039_for循环_循环遍历_循环变量
本文回顾了上一次的内容,介绍了小写和大写字母的序号范围,并通过 `range` 函数生成了 `for` 循环。重点讲解了 `range(start, stop)` 的使用方法,解释了为什么不会输出 `stop` 值,并通过示例展示了如何遍历小写和大写字母的序号。最后总结了 `range` 函数的结构和 `for` 循环的使用技巧。
37 4
|
2月前
|
Java 索引 Python
【10月更文挑战第19天】「Mac上学Python 30」基础篇11 - 高级循环技巧与应用
本篇将介绍更深入的循环应用与优化方法,重点放在高级技巧和场景实践。我们将讲解enumerate()与zip()的妙用、迭代器与生成器、并发循环以及性能优化技巧。这些内容将帮助您编写更高效、结构更合理的代码。
71 5
|
2月前
|
数据安全/隐私保护 Python
Python循环语句
【10月更文挑战第7天】
|
2月前
|
数据可视化 数据挖掘 数据处理
Python实现数字按三角形排列
Python实现数字按三角形排列
27 4
|
2月前
|
Java 程序员 C++
【Python】链式、嵌套调用、递归、函数栈帧、参数默认值和关键字参数
【Python】链式、嵌套调用、递归、函数栈帧、参数默认值和关键字参数
33 0
【Python】链式、嵌套调用、递归、函数栈帧、参数默认值和关键字参数
|
2月前
|
存储 C++ Python
[oeasy]python037_ print函数参数_sep分隔符_separator
本文介绍了Python中`print`函数的`sep`参数,即分隔符。通过回顾上文内容,解释了类型与`type`的概念,并强调了参数类型的重要性。文章详细探讨了`print`函数如何使用`sep`参数来分隔输出值,默认分隔符为空格(序号32)。还讨论了如何修改分隔符为其他字符,如冒号,并解释了为何反斜杠需要使用双反斜杠表示。最后,文章追溯了`sep`名称的由来,以及相关词汇的历史背景,如盎格鲁-萨克逊人的武器和语言。
70 0
下一篇
DataWorks