python趣味编程:歌星大奖赛
<div id="cnblogs_post_body">题目:歌星大奖赛内容:在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1到100分。选
手最后得分为去掉一个最高分和一个最低分后,其余8个分数的平均值。
问题分析和算法设计:
问题算法比较简单,主要是用到两个知识点,一是判断最大值和最小值,二是
计算平均值。
代码如下:
<div class="cnblogs_code">##@小五义 http://www.cnblogs.com/xiaowuyi'''题目:歌星大奖赛内容:在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1到100分。选手最后得分为去掉一个最高分和一个最低分后,其余8个分数的平均值。'''def inputscore(num): i=True#判断输入的成绩是否合法 while i: try: print '评委%d:'%num score=float(raw_input('请输入成绩(0-100):')) if score>100 or score<0: print '输入错误,请重新输入' i=True else: i=False except: print '输入错误,请重新输入' i=True return scoreif __name__=='__main__': sumscore=0#求和 maxscore=0#记录最大成绩 minscore=100#记录最小成绩 for i in range(10): intscore=inputscore(i+1) sumscore+=intscore if intscore>maxscore: maxscore=intscore elif intscore<minscore: minscore=intscore averagescore=(sumscore-maxscore-minscore)/8.0#计算平均分 print '去掉一个最高分%f,去掉一个最低分%f,本选手的最后得分是%f'%(maxscore,minscore,averagescore)
页:
[1]