某农带实验作业
实验1.1: 三角形判断
题目描述:输入三个数,判断能否构成一个三角形。若能,则输出三角形是等腰三角形、等边三角形、直角三角形,还是普通三角形;若不能,则输出“不能组成三角形”提示信息。
# -*- coding: utf-8 -*-
"""
PROJECT_NAME: pythonProject_ lesson
FILE_NAME: triangle
AUTHOR: welt
E_MAIL: tjlwelt@foxmail.com
DATE: 2022/11/3
"""
def judge_triangle(a, b, c):
if (a < b):
a, b = b, a
if (b < c):
b, c = c, b
if (a < b):
a, b = b, a
if a < c + b:
if c == b:
print('三角形是等腰三角形')
elif c == b and a == c and a == b:
print('三角形是等边三角形')
elif a*a == b*b + c*c:
print('三角形是直角三角形')
else:
print('三角形是普通三角形')
else:
print('不能组成三角形')
if __name__ == '__main__':
print('Python')
judge_triangle(3, 4, 5)
实验1.2:银行利率计算
题目描述:已知银行整存整取存款不同期限的月息利率分别为:
0.33% 期限1年
0.36% 期限2年
月息利率 = 0.39% 期限3年
0.45% 期限5年
0.54% 期限8年
要求输入存款的本金和期限,求到期时能从银行得到的利息与本金的合计。
# -*- coding: utf-8 -*-
"""
PROJECT_NAME: pythonProject_ lesson
FILE_NAME: bank
AUTHOR: welt
E_MAIL: tjlwelt@foxmail.com
DATE: 2022/11/3
"""
def main():
principal, year = map(int, input('请输入本金和年限:').split())
ratedict = {
1: 0.0033,
2: 0.0036,
3: 0.0039,
5: 0.0045,
8: 0.0054
}
print('利息与本金合计: ', principal * (1+ratedict[year]) ** (12 * year))
if __name__ == '__main__':
main()
实验1.3:通过日期求某月的天数
题目描述:输入日期的年份和月份,求该月有多少天。提示:对于月份为1、3、5、7、8、10、12的月份天数为31,月份为4、6、9、11的月份天数为30,月份为2时要结合年份考虑闰年的情况。
# -*- coding: utf-8 -*-
"""
PROJECT_NAME: pythonProject_ lesson
FILE_NAME: month_days
AUTHOR: welt
E_MAIL: tjlwelt@foxmail.com
DATE: 2022/11/3
"""
from _datetime import datetime
def main():
input_data_str = input('请输入日期(yyyy/mm/dd):')
input_data = datetime.strptime(input_data_str, '%Y/%m/%d')
print(input_data_str)
year = input_data.year
month = input_data.month
# 计算之前月份的天数总和使用字典方式实现
# 月份 天数 字典
month_day_dict = {1: 31,
2: 28,
3: 31,
4: 30,
5: 31,
6: 30,
7: 31,
8: 31,
9: 30,
10: 31,
11: 30,
12: 31}
if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)):
month_day_dict = {1: 31,
2: 28,
3: 31,
4: 30,
5: 31,
6: 30,
7: 31,
8: 31,
9: 30,
10: 31,
11: 30,
12: 31}
print('该月有'+ str(month_day_dict[month]) + '天')
if __name__ == '__main__':
main()
实验1.4:研究生录取
题目描述:某高校录取研究生的要求是,新生的每门课成绩不低于60分,总成绩不低于330分,380分以下为自费。编一程序实现输入一个学生的四门课成绩,试判断该生为该校录取的情况(“没有录取”、“自费”、“公费”三种情况)。
输入描述:输入四门课的成绩,成绩均为0-150之间的整数。
输出描述:录取结果。(“没有录取”、“自费”、“公费”)
# -*- coding: utf-8 -*-
"""
PROJECT_NAME: pythonProject_ lesson
FILE_NAME: postgraduate_admit
AUTHOR: welt
E_MAIL: tjlwelt@foxmail.com
DATE: 2022/11/3
"""
def main():
score1, score2, score3, score4 = map(int, input('输入四门科目的成绩:').split())
if 0<= score1 <= 150 and 0<= score2 <= 150 and 0<= score3 <= 150 and 0<= score4 <= 150:
if score1 < 60 or score2 < 60 or score3 < 60 or score4 < 60 or score1 + score2 + score3 + score4 < 330:
print('没有录取')
elif score1 + score2 + score3 + score4 < 380:
print('自费')
elif score1 + score2 + score3 + score4 >= 380:
print('公费')
else:
print('成绩必须在0-150之间!')
if __name__ == '__main__':
main()
实验1.5:素数判断
题目描述:任意输入一个正整数,判断是否为素数。(素数定义:除1和自身之外没有其他因子的正整数。,如13是素数!)
# -*- coding: utf-8 -*-
"""
PROJECT_NAME: pythonProject_ lesson
FILE_NAME: prime_num
AUTHOR: welt
E_MAIL: tjlwelt@foxmail.com
DATE: 2022/11/3
"""
def main():
s = int(input("请输入一个正整数: "))
if s < 2:
print("这个数不是素数!")
else:
for i in range(2, s):
if s % i == 0:
print("这个数不是素数!")
break
else:
print("这个数是素数!")
if __name__ == '__main__':
main()
实验1.6:寻找完数
题目描述:编程找出1000以内所有完数。(完数定义:一个正整数除自身外所有因子之和等于该数,则该数为完数,如6=1+2+3,28=1+2+4+7+14,因此6,28是完数)
# -*- coding: utf-8 -*-
"""
PROJECT_NAME: pythonProject_ lesson
FILE_NAME: perfect_num
AUTHOR: welt
E_MAIL: tjlwelt@foxmail.com
DATE: 2022/11/3
"""
def main():
for x in range(1, 1001):
sum = 0
for y in range(1, int(x / 2) + 1):
if x / y == int(x / y):
sum = sum + y
if sum == x:
print(x)
if __name__ == '__main__':
main()
实验1.7:水仙花数
题目描述:编程找出三位数中所有的水仙花数。(水仙花数定义:一个三位正整数的百位、十位和各位的个数位数字立方之和等于该数,则该数为水仙花数。例如153=13+53+33。)
# -*- coding: utf-8 -*-
"""
PROJECT_NAME: pythonProject_ lesson
FILE_NAME: waterlily
AUTHOR: welt
E_MAIL: tjlwelt@foxmail.com
DATE: 2022/11/3
"""
def waterlily():
for i in range(100, 1000):
m = i // 100
n = (i % 100) // 10
k = i % 10
if m ** 3 + n ** 3 + k ** 3 == i:
print(i)
if __name__ == '__main__':
waterlily()
实验1.8:列表计算
题目描述:随机产生10个10-50之间的随机正整数存入列表list1中,再找出该列表中的最大值、最小值和平均值。
# -*- coding: utf-8 -*-
"""
PROJECT_NAME: pythonProject_ lesson
FILE_NAME: random_num_list
AUTHOR: welt
E_MAIL: tjlwelt@foxmail.com
DATE: 2022/11/3
"""
from random import randint
import numpy
if __name__ == '__main__':
randomlist = []
for i in range(0, 10):
randomlist.append(randint(10, 50))
print(randomlist)
print('最大值: ', max(randomlist))
print('最小值: ', min(randomlist))
print('平均值: ', numpy.mean(randomlist))
原文地址:http://www.cnblogs.com/tangjielin/p/16866382.html