在考生文件夹下有一个文件PY102.py,在横线处填写代码,完成如下功能。社会平均工作时间是每天8小时(不区分工作日和休息日),一位计算机科学家接受记者采访时说,他每天的工作时间比社会平均工作时间多3小时。如果这位科学家的当下成就值是1,假设每工作1小时成

admin2022-09-10  45

问题 在考生文件夹下有一个文件PY102.py,在横线处填写代码,完成如下功能。社会平均工作时间是每天8小时(不区分工作日和休息日),一位计算机科学家接受记者采访时说,他每天的工作时间比社会平均工作时间多3小时。如果这位科学家的当下成就值是1,假设每工作1小时成就值增加0.01%,计算并输出两个结果:这位科学家5年后的成就值,以及达到成就值100所需要的年数。其中,成就值和年数都以整数表示,每年以365天计算。
  输出格式示例如下。
  5年后的成就值是××
  ××年后成就值是100
  试题程序
  #
  #在________上补充代码
  #
  scale=0.0001#成就值增量
  def calv(base,day):
    val=base*pow((1))
    return val
    print(’5年后的成就值是{}’.format(int(calv(1,5*365))))
    year=1
    while calv(1,(2))<100:
      year+=1
    print(’{}年后成就值是100’.format(year))

选项

答案 scale=0.0001#成就值增量 def calv(base,day): val=base*pow(base+base*scale,day*11) return val print(’5年后的成就值是{{’.format(int(calv(1,5*365)))) year=1 while calv(1,year*365)<100: year+=1 print(’{}年后成就值是100’.format(year))

解析 本题考核的是pow()函数的使用和对题目的理解。根据题意可以知道,一个正常人工作1小时,他的成就值为1+1*0.01%=100.01%,那么工作一天的成就值就是100.01%**8=1.0001**8,而科学家比正常人多工作3小时,科学家一天的成就值就是1.0001**11。利用Python中的函数表达就是pow(1.0001,11)。通读程序,可以知道函数calv()的两个参数,base为初始成就值,day为工作的时间,所以第1空填base+base*scale,day*11。此处scale是全局变量,可以直接调用。第2空可以根据下文中输出的值进行判断,year是年份,所以第2空应填year*365。
转载请注明原文地址:https://jikaoti.com/ti/LF50FFFM
0

最新回复(0)