CH4 - Python开发技术—流程控制之分支结构 (头歌)

目录

 第1关:英制单位英寸与公制单位厘米互换

第2关:百分制成绩转换为等级制成绩

第3关:约瑟夫环问题

 第1关:英制单位英寸与公制单位厘米互换

"""
英制单位英寸和公制单位厘米互换
"""
def cmin(value,unit):
    ''':param value:长度,
        :param unit:单位'''
    #        请在此处添加代码       #
    # *************begin************#
    if unit == 'cm' or unit =='厘米': #两个表示方法
        result1 = value/2.54
        print ('{:.2f}英寸'.format(result1)) #format使用
    elif unit == 'in' or unit =='英寸':
        result2 = 2.54*value
        print ('{:.2f}厘米'.format(result2))
    else:
        print('请输入有效的单位')
    # **************end*************#
value = input()#输入数字
value = int(value)
unit = input()#输入单位
cmin(value,unit)

第2关:百分制成绩转换为等级制成绩

def invert(score):
    '''
    百分制成绩转换为等级制成绩
    :param score:百分制分数
    :return: 等级(A,B,C,D,E)
    '''
    #        请在此处添加代码       #
    # *************begin************#
    if(90<=score<=100): #注意:和“”
        return "A"
    elif(80<=score<=90):
        return "B"  
    elif(70<=score<=80):
        return "C"
    elif(60<=score<=70):
        return "D"
    else:    #else后面没有括号
        return "E"
    # **************end*************#
    
score = float(input())
grad = invert(score)
print(grad)

第3关:约瑟夫环问题

'''《幸运的基督徒》
有15个基督徒和15个非基督徒在海上遇险,
为了能让一部分人活下来不得不将其中15个人扔到海里面去,
有个人想了个办法就是大家围成一个圈,由某个人开始从1报数,
报到9的人就扔到海里面,他后面的人接着从1开始报数,
报到9的人继续扔到海里面,直到扔掉15个人。由于上帝的保佑,
15个基督徒都幸免于难,问这些人最开始是怎么站的,哪些位置是基督徒哪些位置是非基督徒。
'''
def main():
    persons = [True] * 30 #建立列表,30个人围一个圈
    counter, index, number = 0, 0, 0
    while counter < 15: #
        if persons[index]:
            number += 1
            if number == 9:
                persons[index] = False #9号消灭
                counter += 1 
                number = 0
        index += 1
        index %= 30
    for person in persons:
        print(1 if person else 0, end='')
 
 
if __name__ == '__main__':
    main()

约瑟夫环问题大佬详解

你可能感兴趣的:(python,python,开发语言)