某农带实验作业

实验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

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性