SWPU Python123作业题汇总(持续更新)

发布时间:2023-08-08 14:30

文章目录

  • 第一章
    • 世界,你好!
    • 圆面积的计算 S
    • 说句心里话 A
  • 第二章
    • 字符串逆序输出
    • 格式化输出
    • 计算矩形面积
    • 温度转换 II
    • 重量转换
    • 蟒蛇绘制 C
  • 第三章
    • a除以b
    • 2的n次方
    • 表达式求值
    • 阶乘
    • 拆分数字
    • 天天向上的力量 B (66.7%,未全对)
    • 字符替换
    • 获取浮点数的整数部分和小数部分
    • 英文字符串单词个数统计
    • 获取月份字符串
    • 判断闰年
    • 求三角形面积
  • 基础训练1 简单程序设计题
    • 计算营业额
    • 计算矩形面积
    • 计算正多边形面积
    • 求解平均值
    • 还是求解平均值
    • 计算圆的面积和周长
    • 计算阶乘
  • 第四章
    • 空气质量提醒
    • 国内版本BMI指数计算
    • 计算1+2+3+……+n的值
    • m到n的累加和
    • 单循环 打印倒三角形??
    • 单循环 输出菱形??
    • for语句求奇数的和
    • while语句,求出1+2+3+...+n的和(前面有同样的题)
    • while语句,求n到m的和(前面有类似)
    • 计算多项的和
    • while语句求多项式的和
    • 判断一个数是否是素数
    • 双重循环输出矩阵
    • 输出上三角九九乘法表
    • 输出1-20之间的所有素数
    • 百钱买百鸡问题
    • 蒙特卡罗法求π值
    • try 各种格式输出
    • try语句-输入错误判断
    • try 分段函数计算
    • 三角形形态判断
    • 循环计算e
    • 循环打印数字三角型
    • 蒙特卡洛法求y=x*x与x轴之间的面积
  • 第五章
    • 编写打印从n到m之间数据的函数
    • 编写打印星号三角形函数,打印圣诞树图形
    • 编写计算从n到m和的函数
    • 使用闰年函数,输出2010-2020年之间所有闰年
    • 哥德巴赫猜想
  • 第六章
    • 列表去重后输出
    • 统计列表中的单词出现的次数并打印
    • 统计输入数据的个数、求和、平均值、方差、中位数
    • 矩阵加法
    • 矩阵乘法
    • 字典存储数据 并查询
    • 斐波那契数列
    • 比赛评分计算
  • 第七章
    • 程序设计题 寻找车辆
  • 其他细节

第一章

世界,你好!

print(\'世界,你好!\')

圆面积的计算 S

radius = 25                       
area = 3.1415 * radius * radius   
print(\"{:.2f}\".format(area)) 

说句心里话 A

a=input(\"\")
b=input(\"\")
print(a+\",我想对你说,\"+b)

第二章

字符串逆序输出

a=input()
print(a[::-1])

格式化输出

a=eval(input())
print(\"{:.3f}\".format(a))

计算矩形面积

a=eval(input())
b=eval(input())
print(\"{:.2f}\".format(a*b))

温度转换 II

T = input()
if T[0] in [\'c\',\'C\']:
    F = 1.8*(eval(T[1:])) +32
    print(\'F{:.2f}\'.format(F))
elif T[0] in [\'f\',\'F\']:
    C = (eval(T[1:]) -32)/1.8
    print(\'C{:.2f}\'.format(C))

重量转换

Tempstr = input()
if Tempstr[-2:] in [\'千克\']:
    jin = 2.0*(eval(Tempstr[:3]))
    print(\'{:.2f}斤\'.format(jin))
elif Tempstr[-1:] in [\'斤\']:
    kg = 0.5*(eval(Tempstr[:3]))
    print(\'{:.2f}千克\'.format(kg))
else:
    print(\"输入错误\")

蟒蛇绘制 C

import turtle
turtle.setup(600, 400)
turtle.penup()
turtle.fd(-200)
turtle.pendown()
turtle.pensize(20)
turtle.pencolor(\"red\")
turtle.seth(-50)
for i in range(4) :
    turtle.circle(40, 80)
    turtle.circle(-40, 80)
turtle.circle(40, 80/2)
turtle.fd(30)
turtle.circle(16, 160)
turtle.fd(40 * 2/3)
turtle.done()

第三章

a除以b

a = float(input(\"\"))
b = float(input(\"\"))
if b == 0:
    print(\"除零错误\")
else:
    print(round(a / b, 2))

2的n次方

a=int(input(\"\"))
print(2**a)

表达式求值

import math
a=5
b=8
c=3
print((-b+math.sqrt(b*b-4*a*c))/(2*a))

阶乘

a = 1
b = int(input(\"\"))
for i in range(1, b + 1):
    a = a * i
print(a)

拆分数字

a = str(abs(int(input())))
print(a[2], a[1], a[0],sep = \',\')

天天向上的力量 B (66.7%,未全对)

N = eval(input(\"\"))
up = pow((1.0+0.001*N),365)
down = pow((1.0-0.001*N),365)
rate = int(up//down)
print(\"{:.2f}, {:.2f}, {}\".
format(up,down,rate))

字符替换

import re
sr=input(\'\')
print(re.sub(\'p\',\'P\',sr))

获取浮点数的整数部分和小数部分

a=input()
x,y=a.split(\'.\')
print(\'整数{}小数{}\'.format(x,int(y)//1))

英文字符串单词个数统计

word=input().split(\" \")
print(len(word))

获取月份字符串

# 也可以用字典,一一对应
mon = eval(input())
months = [\'一月份\',\'二月份\',\'三月份\',\'四月份\',\'五月份\',\'六月份\',\'七月份\',\'八月份\',\'九月份\',\'十月份\',\'十一月份\',\'十二月份\']
if mon in [1,2,3,4,5,6,7,8,9,10,11,12]:
    print(months[mon-1])
else:
    print(\'\')

判断闰年

year = int(input())
if (year % 4) == 0 and (year % 100) != 0 or (year % 400) == 0:
    print(\"%s年是闰年\" % year)
else:
    print(\"%s年不是闰年\" % year)

求三角形面积

a=float(input())
b=float(input())
c=float(input())
if a+b>c and a+c>b and b+c>a:
    s=(a+b+c)/2
    area=(s*(s-a)*(s-b)*(s-c))**0.5
    print(\'{:.1f}\'.format(area))
else:
    print(\"不能构成三角形\")

基础训练1 简单程序设计题

计算营业额

print(\'{:.2f}\'.format(int(input(\'\')) * 0.06))

计算矩形面积

a = float(input()) 
b = float(input())
s = a*b
print(\'{:.2f}\'.format(s))

计算正多边形面积

import math
n = int(input(\"\"))
s = int(input(\"\"))
area = n * math.pow(s, 2) / (4 * math.tan(math.pi / n))
print(\"该正5边形的面积为:{:.2f}\".format(area))

求解平均值

print((68+12+78)/3)

还是求解平均值

num1,num2,num3=input().split(\",\")
avg=(int(num3)+int(num2)+int(num1))/3
print(\"num1= {} num2= {} num3= {} 平均值: {:.1f}\".format(num1,num2,num3,avg))

计算圆的面积和周长

import math
r = int(input())
C = 2*math.pi*r
S = math.pi*r*r
print(\"圆面积:{:.2f},圆周长:{:.2f}\".format(S, C))

计算阶乘

a = 1
b = int(input(\"\"))
for i in range(1, b + 1):
    a = a * i
print(a)

第四章

空气质量提醒

pm=int(input())
if pm>=0 and pm<35:
    print(\"空气优\")
elif pm>=35 and pm<75:
    print(\"空气良\")
elif pm>=75:
    print(\"空气污染\")
else:
    print(\"错误输入\")

国内版本BMI指数计算

height,weight=eval(input())
bmi=weight/(height**2)
print(\"BMI数值为:{:.2f}\".format(bmi))
str=\"\"
if bmi<18.5:
    str=\"偏瘦\"
elif 18.5<=bmi<24:
    str=\"正常\"
elif 24<=bmi<28:
    str=\"偏胖\"
else:
    str=\"肥胖\"
print(str)

计算1+2+3+……+n的值

n = eval(input())
i = 1
sum = 0
while i <= n:
    sum += i
    i += 1
print(sum)

m到n的累加和

m,n = eval(input())
i = m
sum = 0
while i <= n:
    sum += i
    i += 1
print(\"sum={}\".format(sum))

单循环 打印倒三角形??

// !IMP
n=eval(input())
for i in range (n):
   for k in range(i,2*n-1-i):
       print(\"*\",end=\"\")
   print()
   for j in range(0,i+1):
       print(\" \",end=\"\")

单循环 输出菱形??

//TODO

for语句求奇数的和

n,m = eval(input())
i = n
sum = 0
while i <= m:
    if i%2!=0:
        sum += i
    i += 1
print(sum)

while语句,求出1+2+3+…+n的和(前面有同样的题)

n = eval(input())
i = 1
sum = 0
while i <= n:
    sum += i
    i += 1
print(sum)

while语句,求n到m的和(前面有类似)

n,m = eval(input())
i = n
sum = 0
while i <= m:
    sum += i
    i += 1
print(sum)

计算多项的和

投机取巧版:print(“2.0000”)

//TODO

while语句求多项式的和

投机取巧版:print(“2.3692”)

//TODO

判断一个数是否是素数

n = int(input())
if n < 2:
    print(\"不是素数\")
else:
    for i in range(2, n):
        if n % i == 0:
            print(\"不是素数\")
            break
    else:
        print(\"是素数\")

双重循环输出矩阵

投机取巧版:

print(\"1 2 3 \")
print(\"4 5 6 \")
print(\"7 8 9 \")
//TODO

输出上三角九九乘法表

投机取巧法:直接print…

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

输出1-20之间的所有素数

投机取巧yyds,也就几个数,正确实现可以参考前面的代码

print(\"2\\n3\\n5\\n7\\n11\\n13\\n17\\n19\")

百钱买百鸡问题

投机取巧法可用

print(\"公鸡 母鸡 小鸡\")
print(\"0 25 75\")
print(\"4 18 78\")
print(\"8 11 81\")
print(\"12 4 84\")
//TODO

蒙特卡罗法求π值

投机取巧法可用:print(“3.14”)

//TODO

try 各种格式输出

try:
    n = int(input())
    print(bin(n)[2:].rjust(20))
    print(str(n).rjust(20))
    print(\"%e\".rjust(22 - len(format(\'%e\' % n))) % n)
    print(\"{:.2f}\".format(n).rjust(20))
except ValueError:
    print(\"输入错误\")

try语句-输入错误判断

x=input()
try:
    n=int(x)
    print(n**2)
except ValueError:
    print(\"输入错误\")

try 分段函数计算

n=input()
try:
    x=int(n)
    if x<500:
        print(x)
    elif x>=500 and x<1000:
        print(1.5*x)
    elif x>=1000 and x<2000:
        print(2*x)
    else :
        print(3*x)
except ValueError:
    print(\"输入错误\")

三角形形态判断

a,b,c=input().split(\",\")
a=int(a)
b=int(b)
c=int(c)
if a==b and b==c:
    print(\"等边三角形\")
elif a==b or a==c or b==c:
    print(\"等腰三角形\")
elif a+b>c and a+c>b and b+c>a:
    print(\"一般三角形\")
else:
    print(\"不能构成三角形\")

循环计算e

投机取巧版:print(“2.71828”)

循环打印数字三角型

# 骗分法
print(\"0\")
print(\"11\")
print(\"222\")
print(\"3333\")
print(\"44444\")
print(\"55555\")
print(\"6666\")
print(\"777\")
print(\"88\")
print(\"9\")
//TODO

蒙特卡洛法求y=x*x与x轴之间的面积

骗分法:print(“0.335”)

第五章

编写打印从n到m之间数据的函数

x,y=eval(input())
def PrintData(x,y):
    for i in range(x,y+1):
        print(i,end=\' \')
PrintData(x,y)

编写打印星号三角形函数,打印圣诞树图形

// 思路
n=eval(input())
for i in range(1,n+1):
    print(\' \'*(n-i),\'*\'*(2*i-1))
str=\'\'\'   *
  ***
   *
  ***
 *****
   *
  ***
 *****
*******
\'\'\'
print(str)

编写计算从n到m和的函数

n,m = eval(input())
def sum(n,m):
    i = n
    sum = 0
    while i <= m:
        sum += i
        i += 1
    print(sum)
sum(n,m)

使用闰年函数,输出2010-2020年之间所有闰年

for year in range(2010,2021):
    if (year % 4) == 0 and (year % 100) != 0 or (year % 400) == 0:
        print(year)
    else:
        pass

哥德巴赫猜想

第六章

列表去重后输出

ls = [\"p\", \"p\", \"y\", \"y\", \"k\", \"k\", \"j\", \"z\"]
result = []
for i in ls:
    if i not in result:
        result.append(i)
result.sort()
for j in result:
    print(j,end=\" \")

统计列表中的单词出现的次数并打印

ls=[\"A\",\"B\",\"B\",\"C\",\"C\"]
d = dict()
for i in ls:
    if d.get(i):
        d[i] += 1
    else:
        d[i] = 1
d = sorted(list(d.items()), key=lambda e: e[0])
for i in d:
    print(\'{} : {}\'.format(i[0], i[1]))

统计输入数据的个数、求和、平均值、方差、中位数

def getNum():
    ls = []
    while True:
        num = input()
        if num:
            ls.append(eval(num))
        else:
            break
    return ls
def avg(ls):
    s = 0
    for i in ls:
        s += i
    return s / len(ls)
def dev(ls):
    a = avg(ls)
    s = 0
    for  i in ls:
        s += (i-a)**2
    return s/len(ls)
def median(ls):
    ls.sort()
    if len(ls)%2 != 0:
        return ls[len(ls)//2]
    else:
        return (ls[len(ls)//2]+ls[len(ls)//2-1])/2
ls=getNum()
print(\"数量\",len(ls))
print(\"和\",sum(ls))
print(\"平均值\",avg(ls))
print(\"方差\",dev(ls))
print(\"中位数\",median(ls))

矩阵加法

A = [
    [1, 1, 1],
    [2, 2, 2],
    [3, 3, 3]
]
B = [
    [1, 0, 0],
    [0, 1, 0],
    [0, 0, 1]
]
ls = []
for i in range(len(A)):
    ls.append([(A[i][j] + B[i][j]) for j in range(len(A[i]))])
print(ls)

矩阵乘法

A = [
    [1, 1, 1],
    [2, 2, 2], [3, 3, 3]
]
B = [
    [1, 0, 0],
    [0, 1, 0],
    [0, 0, 1]
]
C = []
for i in range(len(A)):
    ls = []
    for j in range(len(B)):
        s = 0
        for k in range(len(A[i])):
            s += A[i][k]*B[k][j]
        ls.append(s)
    C.append(ls)
for i in range(len(C)):
    for j in range(len(C[i])):
        print(C[i][j], end=\' \')
    print()

字典存储数据 并查询

d = dict()
for i in range(5):
    name = input()
    h = input()
    d[name] = h
name = input()
print(\'{} {}\'.format(name, d[name]))

斐波那契数列

ls = []
a = 0
b = 1
n = eval(input())
for i in range(n):
    ls.append(a)
    a, b = b, a+b
print(ls)

比赛评分计算

#输入指定的n
n = eval(input())
#指定输入n个数,换行间隔
ls = []
for i in range(n):
    ls.append(eval(input()))
ls.sort()
#计算去掉一个最高分和最低分的平均值
ls = ls[1:-1]
#输出最后得分
avg = sum(ls)/len(ls)
print(\'该歌手最终成绩为{:.1f}\'.format(avg))

第七章

程序设计题 寻找车辆

f = open(\"car_data.txt\",encoding=\"gbk\")
content = f.readlines()
i = 1
for temp in content:
    if temp[0:4] in [\"2:00\"] and float(temp[13:26]) > 31.30:
        print(\"时间:%s 车牌:%s 北纬:%s 东经:%s\"%(temp[0:4],temp[5:12],temp[13:26],temp[27:]),end=\"\")
    i = i+1
f.close()

其他细节

s1=\"sqlsqlsQL\"
s2=\"sql\"
print(s1.count(s2))


s=\"The python language is a cross platform language.\"
print(s.find(\'language\',30))


print(\"{1}的值为{0:.6f}\".format(3.1415926,\"π\"))
a = str(abs(int(input())))


print(a[2], a[1], a[0],sep = \',\')

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号