博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
编写C#程序,计算去除最大值和最小值之后的平均值
阅读量:6708 次
发布时间:2019-06-25

本文共 2560 字,大约阅读时间需要 8 分钟。

有10位评委对跳水运动员做评分,编写C#程序,计算去除最大得分和最小得分之后的平均得分 作为运动员的跳水成绩。

interface IMark

using System.Collections.Generic;namespace ConsoleApp1{    ///     /// 评分接口    ///     interface IMark    {        Mark GetMaxScore(List list_Marks);        Mark GetMinScore(List list_Marks);        ///         /// 获取所有评分        ///         /// 
List GetAllMarks(int athleteId); /// /// 获取除最大得分和最小得分之后的平均得分 /// ///
float GetAvgScoreExceptFirstAndLast(); }}

class Mark

namespace ConsoleApp1{    ///     /// 评分实体    ///     public class Mark    {        public int Id;        public int JuryId;        public int AthleteId;        public float Score;    }}

class MarkService

using System.Collections.Generic;using System.Linq;namespace ConsoleApp1{    ///     /// 实现评分接口    ///     public class MarkService : IMark    {          public MarkService()        {         }        ///         /// 获取所有评分        ///         ///         /// 
public List GetAllMarks(int athleteId) { List list = new List(); for (int i = 1; i < 11; i++) { list.Add(new Mark() { Id = i, JuryId = i, AthleteId = 1, Score = i, }); } return list.Where(x=>x.AthleteId ==athleteId).ToList(); } /// /// 获取除最小分数、最大分数之外的平均得分 /// ///
public float GetAvgScoreExceptFirstAndLast() { List List_Marks = this.GetAllMarks(1); return List_Marks.Where( x => x.Id != this.GetMaxScore(List_Marks).Id && x.Id != this.GetMinScore(List_Marks).Id).Average(y=>y.Score); } /// /// 获取最大得分 /// /// ///
public Mark GetMaxScore(List list_Marks) { float maxScore = list_Marks.Max(x => x.Score); return list_Marks.Where(x => x.Score == maxScore).FirstOrDefault(); } /// /// 获取最小得分 /// /// ///
public Mark GetMinScore(List list_Marks) { float minScore = list_Marks.Min(x => x.Score); return list_Marks.Where(x => x.Score == minScore).FirstOrDefault(); } }}

 

class Program

using System;using System.Text; namespace ConsoleApp1{    class Program    {        static void Main(string[] args)        {            IMark t = new Test();            Console.WriteLine(t.GetAvgScoreExceptFirstAndLast());            Console.Read();        }    }}

 

转载于:https://www.cnblogs.com/tcli/p/7155840.html

你可能感兴趣的文章
《游戏引擎架构》笔记三
查看>>
[LeetCode]Palindrome
查看>>
Lua学习笔记(3):运算符
查看>>
POJ 3259 Wormholes
查看>>
SQL*Loader使用详解(一)
查看>>
hdu 5012(bfs)
查看>>
hdu2795 线段树 贴广告
查看>>
如何快速带领实习生进入角色
查看>>
用ListView实现对数据库的内容显示
查看>>
用Codis实现Redis分布式集群
查看>>
时间、时间戳相关小结 - iOS
查看>>
uvm_factory——我们的工厂(一)
查看>>
amfphp中文乱码解决方法
查看>>
LDAP学习笔记
查看>>
Mysql增加、删除和修改列属性和约束,和一些有用的查询语句
查看>>
discuz@功能的代码
查看>>
Java日志记录--log4j and logback
查看>>
【angularjs】使用angular搭建项目,获取dom元素
查看>>
leetcode1034
查看>>
JSP学习
查看>>