当前位置:   article > 正文

头歌 Python开发技术—流程控制之分支结构_本关任务:编写一个能将百分制成绩转换为等级制成绩的函数。 相关知识 为了完成本

本关任务:编写一个能将百分制成绩转换为等级制成绩的函数。 相关知识 为了完成本
  1. 英制单位英寸与公制单位厘米互换

任务描述
本关任务:编写一个能实现单位英寸与公制单位厘米的互换的函数。

相关知识
为了完成本关任务,你需要掌握:1.if条件语句。

编程要求
根据提示,在右侧编辑器补充代码,实现单位英寸与公制单位厘米互换。
(1英寸 = 2.54厘米)
注:函数有两个参数,一个value值(代表长度),一个单位(in(英寸)或cm(厘米)),如单位是cm则直接输出单位为英寸的长度,如单位是in则直接输出单位为厘米的长度,如果单位不是cm或in,则输出‘请输入有效的单位’。结果保留两位小数。(本函数不需返回值)

测试说明
平台会对你编写的代码进行测试:

测试输入:3,cm;
预期输出:1.18英寸

测试输入:3,厘米;
预期输出:1.18英寸

测试输入:5,in;
预期输出:12.70厘米

测试输入:5,英寸;
预期输出:12.70厘米

测试输入:5,tt;
预期输出:请输入有效的单位

"""
英制单位英寸和公制单位厘米互换
"""
def cmin(value,unit):
    ''':param value:长度,
        :param unit:单位'''

    #        请在此处添加代码       #
    # *************begin************#
    if unit == 'in' or unit == '英寸':
        print('%.2f厘米'%(value*2.54))
    elif unit == 'cm' or unit == '厘米':
        print('%.2f英寸'%(value/2.54))
    else:
        print('请输入有效的单位')
    # **************end*************#
  

value = input()
value = int(value)
unit = input()
cmin(value,unit)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  1. 百分制成绩转换为等级制成绩

任务描述
本关任务:编写一个能将百分制成绩转换为等级制成绩的函数。

相关知识
为了完成本关任务,你需要掌握:1.if条件语句。

编程要求
根据提示,在右侧编辑器补充代码,将百分制成绩转换为等级制成绩。
(90<=score<=100:A);
(80<=socre<90:B);
(70<=socre<80:C);
(60<=socre<70:D);
(score<60:E)

测试说明
平台会对你编写的代码进行测试:

测试输入:90.5;
预期输出:A

测试输入:82;
预期输出:B

def invert(score):
    '''
    百分制成绩转换为等级制成绩
    :param score:百分制分数
    :return: 等级(A,B,C,D,E)
    '''
    #        请在此处添加代码       #
    # *************begin************#
    if score >= 90 and score <= 100:
        grad = 'A'
        # return grad
    elif score >= 80:
        grad = 'B'
        # return grad
    elif score >= 70:
        grad = 'C'
        # return grad
    elif score >= 60:
        grad = 'D'
        # return grad
    elif score >= 0 and score < 60:
        grad = 'E'
        # return grad
    else:
        grad = 'error'
    return grad
    # **************end*************#
    
score = float(input())
grad = invert(score)
print(grad)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  1. 约瑟夫环问题

任务描述
本关任务:《幸运的基督徒》
有15个基督徒和15个非基督徒在海上遇险,为了能让一部分人活下来不得不将其中15个人扔到海里面去,有个人想了个办法就是大家围成一个圈,由某个人开始从1报数,报到9的人就扔到海里面,他后面的人接着从1开始报数,报到9的人继续扔到海里面,直到扔掉15个人。由于上帝的保佑,15个基督徒都幸免于难,问这些人最开始是怎么站的,哪些位置是基督徒哪些位置是非基督徒。(用1代表基督徒,0代表非基督徒)

相关知识
为了完成本关任务,你需要掌握:1.if条件语句,2.列表操作。3.循环语句,4.函数定义及调用.

编程要求
根据提示,在右侧编辑器补充代码,计算并输出这30个人开始的站位。

测试说明
平台会对你编写的代码进行测试:

测试输入:
预期输出:
(非正确答案,举例输出格式如下:)
101010101010101010101010101010

'''《幸运的基督徒》
有15个基督徒和15个非基督徒在海上遇险,
为了能让一部分人活下来不得不将其中15个人扔到海里面去,
有个人想了个办法就是大家围成一个圈,由某个人开始从1报数,
报到9的人就扔到海里面,他后面的人接着从1开始报数,
报到9的人继续扔到海里面,直到扔掉15个人。由于上帝的保佑,
15个基督徒都幸免于难,问这些人最开始是怎么站的,哪些位置是基督徒哪些位置是非基督徒。
'''

def main():
    #        请在此处添加代码       #
    # *************begin************#
    persons = [True] * 30    
    counter, index, number = 0, 0, 0   
    while counter < 15:
        if persons[index]:            
            number += 1          
            if number == 9:
               persons[index] = False               
               counter += 1             
               number = 0    
        index += 1        
        index %= 30    
    for person in persons:
        print('1' if person else '0', end='')
            
 # **************end*************#

   

if __name__ == '__main__':
    main()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/代码探险家/article/detail/774216
推荐阅读
相关标签
  

闽ICP备14008679号