利用流水线计算学生成绩的最大值、最小值以及及格率

利用流水线计算学生成绩的最大值、最小值以及及格率

#DoInput.java---输入学生人数,以及学生成绩
import java.util.*;
public class DoInput extends DoThing{  
	DoThing nextDoThing;
	public void setNext(DoThing next){   
		nextDoThing=next;
	}
	
	public void doThing(double []a){
		System.out.println("请输入学生数:");   
		Scanner read=new Scanner(System.in);
		int count=read.nextInt(); 
		System.out.println("请输入每个学生的成绩:");
		a=new double[count];   
		for(int i=0;i<count;i++){
			a[i]=read.nextDouble();  
		}
		nextDoThing.doThing(a);
	}
}
#DoThing.java
public abstract class DoThing{
	public abstract void doThing(double []a);
	public abstract void setNext(DoThing next);
}
#MaxAndMin.java---计算最高分,最低分
import java.util.*;
public class MaxAndMin extends DoThing{
	DoThing nextDoThing;
	
	public void setNext(DoThing next){
		nextDoThing=next;
	}
	
	public void doThing(double []a){
		Arrays.sort(a);
		System.out.println("最高分:"+a[a.length-1]+",");
		System.out.println("最低分:"+a[0]);
		nextDoThing.doThing(a);
	}
}
#PassPercent.java  --计算及格率
public class PassPercent extends DoThing{
	DoThing nextDoThing;
	public void setNext(DoThing next){
		nextDoThing=next;
	}
	
	public void doThing(double []a){
		int count=0;
		for(int i=0;i<a.length;i++){
			if(a[i]>=60) count+=1;
		}
		double passpercent=(double)count/a.length;
		System.out.print("这次考试中学生的及格率:"+passpercent*100+"%\n");
	}
}
#StreamLine.java---建立流水线
public class StreamLine{
	private DoThing one,two,three;
	StreamLine(){
		one=new DoInput();   
		two=new MaxAndMin();
		three=new PassPercent();
		one.setNext(two);
		two.setNext(three);
	}
	
	public void giveResult(double a[]){
		one.doThing(a);
	}
}
#StudnetTest
public class StudentTest{
	public static void main(String args[]){
		StreamLine line=new StreamLine();  //创建流水线
		double []a=new double[1];
		line.giveResult(a);
	}
}

运行结果示例:
在这里插入图片描述

基于java学生成绩管理与分析系统,制作一个学生成绩的分析系统,要有基本的学生信息、成绩的增删改查功能,以及。拥有管理员、教师、学生三种权限。学生、教师可以查询学生的成绩、以及对于成绩的分析、管理员负责系统的维护和数据录入等。(1)数据库的设计与实现,根据系统的需以及功能分析进行设计。 (2)一个用户打开的默认界面,需要账号密码进行登录的学生成绩分析系统首页的实现。 (3)管理员对学生的信息进行编辑的学生信息管理模块的实现。 (4)管理员对各科课程信息进行编辑的课程信息管理模块的实现。 (5)实现管理员对每名同学的成绩的添加、修改和删除的成绩信息管理模块的实现。 (6)管理员对用户权限管理的用户管理模块。 (7)能够查询学生课程,成绩,信息的信息查询模块的实现。 构造好一个完整的成绩管理系统后,开始实现教师对成绩的分析系统。成绩分析系统有如下开发目标: (1)供教师查询的某一班级,某一年级单科成绩报表,并且能查看每个学生相较于上次考试所进步或退步的名次 (2)供教师查询的某一班级成绩报表,并且能查看每个学生相较于上次考试所进步或退步的名次、标注出名次最好的科目和最差的科目。某一年级成绩汇总表,并且能查看每个学生相较于上次考试所进步或退步的名次、标注出名次最好的科目和最差的科目 供教师查询的某一班级,某一年级的某一学期各科成绩的分析。分析的结果会显示各科各分数段的人数,各科的优秀人数,各科的及格人数,并且自动的计算出各科的优秀率和及格率
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值