Python经典基础习题(入门)

发布于:2023-01-24 ⋅ 阅读:(527) ⋅ 点赞:(0)

目录

目录

1.编写程序,输入任意大的自然数,输出各位数字之和。(使用map函数)

2.编写程序,通过用户输入三角形三边长度,并计算三角形的面积。

3.编写程序,生成一个含有20个随机数的列表,要求所有元素不相同,并且每个元素的值介于1到100之间。

4.编写程序,输入两个集合setA和setB,分别输出它们的交集,并集和差集setA - setB。(使用eval函数)

5.编写程序,输入一个自然数,输出它们的二进制,八进制,十六进制表示形式。

6.编写程序,输出1-100之间所有能被7整除但是不能被5整除的数。

7.编写程序,求解鸡兔同笼问题。假设共有鸡、兔30只,脚90只,求鸡、兔各有多少只。

8.编写程序,在屏幕上打印1-30数,每7个数换行。

9.编写程序,打印九九乘法口诀表。

10.数连乘的结果。(使用reduce函数)


1.编写程序,输入任意大的自然数,输出各位数字之和。(使用map函数)

程序代码1:

x=str(input("请输入任意大的自然数:"))
y=list(x)
x.split(" ")
y=list(map(int,y))
z=sum(y,)
print("这个数的各位之和为:",z)

运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise01.py
请输入任意大的自然数:22
这个数的各位之和为: 4

进程已结束,退出代码0

程序代码2:

x=input("请输入任意大的自然数:")
print(sum(map(int,x)))


运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise01.py
请输入任意大的自然数:123
6

进程已结束,退出代码0


2.编写程序,通过用户输入三角形三边长度,并计算三角形的面积。

程序代码:

from math import *
a=float(input("请输入三角形的一条边:"))
b=float(input("请输入三角形的另外一条边:"))
c=float(input("请输入三角形的最后一条边:"))
if a+b>c and a-b<c and a+c>b and a-c<b and b+c>a and b-c<a:
    print("三角形成立")
else:
    print("三角形不成立")
    exit(0)
p=(a+b+c)/2
S=sqrt(p*(p-a)*(p-b)*(p-c))
print("这个三角形的面积为:",S)

运行结果:

C:\ProgramData\Anaconda3\python.exe "D:/pythonProject1/exercise 02.py"
请输入三角形的一条边:55
请输入三角形的另外一条边:4
请输入三角形的最后一条边:1
三角形不成立

进程已结束,退出代码0
C:\ProgramData\Anaconda3\python.exe "D:/pythonProject1/exercise 02.py"
请输入三角形的一条边:3
请输入三角形的另外一条边:4
请输入三角形的最后一条边:5
三角形成立
这个三角形的面积为: 6.0

进程已结束,退出代码0

3.编写程序,生成一个含有20个随机数的列表,要求所有元素不相同,并且每个元素的值介于1到100之间。

程序代码1:

import random
i=0
while i<21:
    i += 1
    n = random.randrange(1,100)
    print(n,end=" ")

运行结果:

C:\ProgramData\Anaconda3\python.exe "D:/pythonProject1/exercise 03.py"
59 65 8 20 69 39 36 69 9 48 31 2 53 7 32 95 37 46 66 71 57 
进程已结束,退出代码0

程序代码2:

from random import sample
print(sample(range(1,100),20))


运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exei'.py
[47, 40, 77, 8, 74, 43, 78, 15, 94, 52, 27, 1, 89, 37, 60, 67, 20, 6, 14, 10]

4.编写程序,输入两个集合setA和setB,分别输出它们的交集,并集和差集setA - setB。(使用eval函数)

程序代码:

setA = eval(input("请输入一个集合:"))
setB = eval(input("请输入另一个集合:"))
print("它们的交集是:",(setA & setB))
print("它们的并集是:",(setA | setB))
print("它们的差集是:",(setA - setB))


运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise04.py
请输入一个集合:{1,2,3}
请输入另一个集合:{1,4,5}
它们的交集是: {1}
它们的并集是: {1, 2, 3, 4, 5}
它们的差集是: {2, 3}

进程已结束,退出代码0

5.编写程序,输入一个自然数,输出它们的二进制,八进制,十六进制表示形式。

程序代码:

from math import *
x=int(input("请输入一个自然数:"))
if x<0:
    print("请输入自然数!")
    exit(0)
print("这个数字的二进制是:",bin(x))
print("这个数字的八进制是:",oct(x))
print("这个数字的十六进制是:",hex(x))


运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise05.py
请输入一个自然数:22
这个数字的二进制是: 0b10110
这个数字的八进制是: 0o26
这个数字的十六进制是: 0x16

进程已结束,退出代码0
C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise05.py
请输入一个自然数:-1
请输入自然数!

进程已结束,退出代码0

6.编写程序,输出1-100之间所有能被7整除但是不能被5整除的数。

程序代码1:

i=0
while i<101:
    i+=1
    if i%7==0 and i%5!=0:
        print(i,end=" ")


运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise06.py
7 14 21 28 42 49 56 63 77 84 91 98 
进程已结束,退出代码0

程序代码2:

x=range(1,100)
for n in x:
    if n%7==0 and n%5!=0:
        print(n,end=" ")


运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise06.py
7 14 21 28 42 49 56 63 77 84 91 98 
进程已结束,退出代码0

7.编写程序,求解鸡兔同笼问题。假设共有鸡、兔30只,脚90只,求鸡、兔各有多少只。

程序代码:

for i in range(31):
    if 2*i+4*(30-i)==90:
        print("鸡有:",i,"只")
        print("兔有:", 30-i, "只")


运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise07.py
鸡有: 15 只
兔有: 15 只

进程已结束,退出代码0

8.编写程序,在屏幕上打印1-30数,每7个数换行。

程序代码:

count=0
for i in range(1,31):
    print(i,end=" ")
    count+=1
    if count % 7 == 0:
        print()


运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise08.py
1 2 3 4 5 6 7 
8 9 10 11 12 13 14 
15 16 17 18 19 20 21 
22 23 24 25 26 27 28 
29 30 
进程已结束,退出代码0

9.编写程序,打印九九乘法口诀表。

程序代码1:

for i in range(1,10):
    for j in range(1,10):
        print("{}*{}={}\t". format(i,j,i*j),end=" ")
    print()


运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise09.py
1*1=1     1*2=2     1*3=3     1*4=4     1*5=5     1*6=6     1*7=7     1*8=8     1*9=9     
2*1=2     2*2=4     2*3=6     2*4=8     2*5=10     2*6=12     2*7=14     2*8=16     2*9=18     
3*1=3     3*2=6     3*3=9     3*4=12     3*5=15     3*6=18     3*7=21     3*8=24     3*9=27     
4*1=4     4*2=8     4*3=12     4*4=16     4*5=20     4*6=24     4*7=28     4*8=32     4*9=36     
5*1=5     5*2=10     5*3=15     5*4=20     5*5=25     5*6=30     5*7=35     5*8=40     5*9=45     
6*1=6     6*2=12     6*3=18     6*4=24     6*5=30     6*6=36     6*7=42     6*8=48     6*9=54     
7*1=7     7*2=14     7*3=21     7*4=28     7*5=35     7*6=42     7*7=49     7*8=56     7*9=63     
8*1=8     8*2=16     8*3=24     8*4=32     8*5=40     8*6=48     8*7=56     8*8=64     8*9=72     
9*1=9     9*2=18     9*3=27     9*4=36     9*5=45     9*6=54     9*7=63     9*8=72     9*9=81     

进程已结束,退出代码0

程序代码2:

for i in range(1,10):
    for j in range(1,10):
        print("%d*%d=%d" % (i,j,i*j),end=" ")
    print()


运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise09.py
1*1=1 1*2=2 1*3=3 1*4=4 1*5=5 1*6=6 1*7=7 1*8=8 1*9=9 
2*1=2 2*2=4 2*3=6 2*4=8 2*5=10 2*6=12 2*7=14 2*8=16 2*9=18 
3*1=3 3*2=6 3*3=9 3*4=12 3*5=15 3*6=18 3*7=21 3*8=24 3*9=27 
4*1=4 4*2=8 4*3=12 4*4=16 4*5=20 4*6=24 4*7=28 4*8=32 4*9=36 
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 5*6=30 5*7=35 5*8=40 5*9=45 
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 6*7=42 6*8=48 6*9=54 
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 7*8=56 7*9=63 
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 8*9=72 
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 

进程已结束,退出代码0

10.数连乘的结果。(使用reduce函数)

程序代码:

from functools import reduce
x = eval(input("请输入一个整数列表:"))
print(reduce(lambda  x,y:x*y,x))

运行结果:

C:\ProgramData\Anaconda3\python.exe D:/pythonProject1/exercise10.py
请输入一个整数列表:[1,2,3,4]
24

进程已结束,退出代码0

本文含有隐藏内容,请 开通VIP 后查看