Python100道练习题

Python100道练习题

BIlibili

1、两数之和

num1 = 20
num2 = 22

result = num1 + num2

print(result)

2、一百以内的偶数

list1 = []

for i in range(1,100):
    if i % 2 == 0:
        list1.append(i)
print(list1)

3、一百以内的奇数

# 方法一
list1 = []
for i in range(1,100):
    if i % 2 != 0:
        list1.append(i)
print(list1)

# 方法二
list2 = [i for i in range(1,100) if i % 2 != 0]
print(list2)

# 方法三
list3 = [i for i in range(1,100,2)]

4、判断素数

编写程序,判断某一个数是否为素数。所谓素数指的是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数:

a = 37
flag = True
for i in range(2,a):  # 注意range 是左闭右开
    if a % i == 0:
        flag = False
        break  # 一旦判断成功后,后面就没必要继续了
if flag:
    print('a不是素数')
else:
    print('a是素数')

5、求阶乘

编写程序,求出某个自然数的阶乘。一个正整数的阶乘是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!

a = 5

# 方法一
if a == 0 or a == 1:
    print('阶乘为: 1')
else:
    sum = 1
    for i in range(2,a+1): # 包括本身
        sum *= i
    print('阶乘为:',sum)



# 方法二 递归
def fun(x):
    if x == 1:
        return 1
    else:
        return x * fun(x - 1)


print(fun(a))
# 方法三 math.factorial()
import math
print(math.factorial(a))

6、求圆的周长

程序编写:输入半径,求出圆的周长

圆的周长:2πr

import math

r = float(input('请输入圆的半径:'))
girth = 2 * r * math.pi
print('周长是',round(girth,2))  # round 保留两位小数

7、求圆的面积

程序编写:输入半径,求出圆的面积

圆的周长:πrr

import math

r = float(input('请输入圆的半径:'))
girth = r * r * math.pi
print('面积是',round(girth,2))  # round 保留两位小数

8、求直角三角形斜边的边长

编写程序:输入两个直角边,求出三角形斜边的长度

勾股定理:a2 + b2 = c2

import math

a = 3
b = 4
cfang = math.pow(a,2) + math.pow(b,2)
# 或者 math.pow(cfang,0.5) or cfang ** 0.5
print('三角形斜边的长度: ',math.sqrt(cfang))

9、比较三个数大小

编写程序:输入三个数,从小到大输出三个数

a = int(input('请输入第一个数:'))
b = int(input('请输入第二个数:'))
c = int(input('请输入第三个数:'))

lst = [a,b,c]
# 方法一:list.sort() ,sort(reverse=False) 默认False 升序
lst.sort()
print(lst)

# 方法二:sorted(lst)
list1 = sorted([a,b,c])
print(list1)

10、找出区间内的素数

编写程序,输入整数a、b表示一个闭区间,找出该区间内的所有素数并打印。

# 判断素数函数
def prime(x):
    flag = True
    for i in range(2, x):
        if x % i == 0:
            flag = False
            break 
    return flag

# 闭区间
a = 10  # 左端点
b = 20  # 右端点
num_list = []
for i in range(a,b+1):
    if prime(i):
        num_list.append(i)

print(num_list)

11、组合数字

有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?

# 方法一
str1 = '1234'
for i in str1:
    for j in str1:

        for k in str1:
            if i == j or i == k or j == k:
                continue
            print(i+j+k)

# 方法二
for i in range(1,5):
    for j in range(1,5):
        for k in range(1,5):
            if not(i == j or i == k or j == k):
                print(f'{
     
     i}{
     
     </
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值