一个搭建流水线求唱歌比赛最终得分的例子
来源:互联网 发布:relieff算法 编辑:程序博客网 时间:2024/05/08 12:54
搭建流水线,即建立一个类,该类同时组合a,b,c三个对象。流水线的作用是,用户只需要将套处理的数据交给流水线,流水线就会依次让流水线上的对象来出来数据。即流水线上首先由对象a处理数据,a处理完后,自动将出来的数据交给b,b处理数据后,自动将处理的数据交给c。比如,在歌手比赛中,只需要将评委给出的分数交给设计好的流水线,就可以得到选手的最后的分,流水线上的第一个对象负责录入裁判给选手的分数,第二个对象负责去掉一个最高分和一个最低分,最后一个对象负责计算出平均成绩,这样一个流水线的流程就走下来了。
对象a,负责录入成绩
package Example5;import java.util.Scanner;//对象a负责录入成绩public class InputScore { DelScore del; InputScore(DelScore del) { this.del = del; } public void inputScore() { System.out.println("当前评委数:"); Scanner scanner = new Scanner(System.in); int count = scanner.nextInt(); System.out.println("请输入各评委的分数:"); double []a = new double[count]; for(int i=0;i<count;i++){ a[i] = scanner.nextDouble(); } del.dodelete(a); }}
类b,负责去掉最高分和最低分
package Example5;//去掉最低分和最高分public class DelScore { ComputerAver computerAver; DelScore(ComputerAver computerAver) { this.computerAver = computerAver; } public void dodelete(double []a){ java.util.Arrays.sort(a);//排序 System.out.println("去掉一个最高分:" + a[a.length-1] + ","); System.out.println("去掉一个最低分:" + a[0] + "。"); double b[] = new double[a.length-2]; for(int i=1;i<a.length-1;i++){ b[i-1] = a[i]; }//注意哪些存在哪些不存在; computerAver.giveAver(b); }}
类c,负责统计最后分数
package Example5;public class ComputerAver { public void giveAver(double []b){ double sum = 0,aver = 0; for(int i=0;i<b.length;i++){ sum+= b[i]; } aver = sum/(b.length); System.out.println("选手最后得分:" + aver); }}
调用各个类
package Example5;public class Line { InputScore one; DelScore two; ComputerAver three; Line() { three = new ComputerAver(); two = new DelScore(three); one = new InputScore(two); } public void givaPersonScocer(){ one.inputScore(); }}
主函数
package Example5;public class SingGame { public static void main (String args[]){ Line line = new Line(); line.givaPersonScocer(); }}
调试结果:
当前评委数:3请输入各评委的分数:991256去掉一个最高分:99.0,去掉一个最低分:12.0。选手最后得分:56.0
0 0
- 一个搭建流水线求唱歌比赛最终得分的例子
- 求最终得分
- 唱歌比赛
- sql 类似歌手得分或跳水比赛的打分规则.
- 搭建流水线
- LWUIT Dimension的设置位置与容器最终显示相关的一个例子
- 用struts2搭建一个登录的例子
- 用struts2搭建一个登录的例子
- 用struts2搭建一个登录的例子
- n支队伍比赛,分别编号为0,1,2。。。。n-1,已知它们之间的实力对比关系和出场顺序,求最终排名
- 求帮助---试卷得分计算方案的公平性分析
- C编程题:求参赛选手的最后得分
- 软考一个流水线的典型例题
- 软考一个流水线的典型例题
- [世界杯] 阿根廷 vs 塞黑 破本次比赛的最高得分悬殊 6-0
- dialog例子-维护流水线
- 唱歌的音准
- 会唱歌的电脑
- Android Touch事件分发响应机制
- 拓扑排序 [NOIP2003]神经网络 T1
- C# 键盘KeyCode与keyValue
- 前端上传组件Plupload使用说明指南
- POJ 1475 Pushing Boxes(A*)
- 一个搭建流水线求唱歌比赛最终得分的例子
- Xcode7.3.1插件失效
- 两种不一样的方式求时间差(NSTimeInteral)
- Android快速Toast工具类
- *【线程优化】AsyncTask 异步任务
- Handler一定要在主线程实例化吗?new Handler()和new Handler(Looper.getMainLooper())的区别
- SQL内连接与外连接
- [SCOI2005]超级格雷码
- Openjudge 1.6.9