寒假日报day10

今天写的是第三个实验:统计学生信息

没那么多就直接上代码

  1 package com.ms.firstWork
  2 
  3 import scala.collection.mutable.ArrayBuffer
  4 
  5 class Student(id: Int, gender: String, math: Int, english: Int, physics: Int) {
  6   var SiD = id
  7   var Sgender = gender
  8   var Smath = math
  9   var Senglish = english
 10   var Sphysics = physics
 11 }
 12 
 13 object thirdWork {
 14   def main(args: Array[String]): Unit = {
 15     var studentlist = new ArrayBuffer[Student]()
 16     studentlist.append(new Student(301610, "male", 80, 64, 78))
 17     studentlist.append(new Student(301611, "female", 65, 87, 58))
 18     studentlist.append(new Student(301612, "female", 44, 71, 77))
 19     studentlist.append(new Student(301613, "female", 66, 71, 91))
 20     studentlist.append(new Student(301614, "female", 70, 71, 100))
 21     studentlist.append(new Student(301615, "male", 72, 77, 72))
 22     studentlist.append(new Student(301616, "female", 73, 81, 75))
 23     studentlist.append(new Student(301617, "female", 69, 77, 75))
 24     studentlist.append(new Student(301618, "male", 73, 61, 65))
 25     studentlist.append(new Student(301619, "male", 74, 69, 68))
 26     studentlist.append(new Student(301620, "male", 76, 62, 76))
 27     studentlist.append(new Student(301621, "male", 73, 69, 91))
 28     studentlist.append(new Student(301622, "male", 55, 69, 61))
 29     studentlist.append(new Student(301623, "male", 50, 58, 75))
 30     studentlist.append(new Student(301624, "female", 63, 83, 93))
 31     studentlist.append(new Student(301625, "male", 72, 54, 100))
 32     studentlist.append(new Student(301626, "male", 76, 66, 73))
 33     studentlist.append(new Student(301627, "male", 82, 87, 79))
 34     studentlist.append(new Student(301628, "female", 62, 80, 54))
 35     studentlist.append(new Student(301629, "male", 89, 77, 72))
 36 
 37     sortsum(studentlist)
 38   }
 39   def sortsum(list: ArrayBuffer[Student]): Unit = {
 40     var count=0
 41     var mathSum = 0
 42     var mathAverage = 0
 43     var mathMin = 100
 44     var mathMax = 0
 45     var englishSum = 0
 46     var englishAverage = 0
 47     var englishMin = 100
 48     var englishMax = 0
 49     var physicsSum = 0
 50     var physicsAverage = 0
 51     var physicsMin = 100
 52     var physicsMax = 0
 53     var femaleSrudent=new ArrayBuffer[Student]()
 54     var maleSrudent=new ArrayBuffer[Student]()
 55     list.foreach(student => {
 56       count+=1
 57       if(student.Sgender.equals("female")){
 58         femaleSrudent.append(student)
 59       }else{
 60         maleSrudent.append(student)
 61       }
 62       if(student.Smath>mathMax){
 63         mathMax=student.Smath
 64       }else if(student.Smath<mathMin){
 65         mathMin=student.Smath
 66       }
 67       if(student.Senglish>englishMax){
 68         englishMax=student.Senglish
 69       }else if(student.Senglish<englishMin){
 70         englishMin=student.Senglish
 71       }
 72       if(student.Sphysics>physicsMax){
 73         physicsMax=student.Sphysics
 74       }else if(student.Sphysics<physicsMin){
 75         physicsMin=student.Sphysics
 76       }
 77       mathSum+=student.Smath
 78       englishSum+=student.Senglish
 79       physicsSum+=student.Sphysics
 80     })
 81     mathAverage=mathSum/count
 82     englishAverage=englishSum/count
 83     physicsAverage=physicsSum/count
 84     println("course\t\taverage\tmin\tmax")
 85     println("Math:\t\t"+mathAverage+"\t\t"+mathMin+"\t"+mathMax)
 86     println("English:\t"+englishAverage+"\t\t"+englishMin+"\t"+englishMax)
 87     println("Physics:\t"+physicsAverage+"\t\t"+physicsMin+"\t"+physicsMax)
 88     sortmale(maleSrudent)
 89     sortfemale(femaleSrudent)
 90   }
 91   def sortmale(list: ArrayBuffer[Student]): Unit = {
 92     var count=0
 93     var mathSum = 0
 94     var mathAverage = 0
 95     var mathMin = 100
 96     var mathMax = 0
 97     var englishSum = 0
 98     var englishAverage = 0
 99     var englishMin = 100
100     var englishMax = 0
101     var physicsSum = 0
102     var physicsAverage = 0
103     var physicsMin = 100
104     var physicsMax = 0
105     list.foreach(student => {
106       count+=1
107       if(student.Smath>mathMax){
108         mathMax=student.Smath
109       }else if(student.Smath<mathMin){
110         mathMin=student.Smath
111       }
112       if(student.Senglish>englishMax){
113         englishMax=student.Senglish
114       }else if(student.Senglish<englishMin){
115         englishMin=student.Senglish
116       }
117       if(student.Sphysics>physicsMax){
118         physicsMax=student.Sphysics
119       }else if(student.Sphysics<physicsMin){
120         physicsMin=student.Sphysics
121       }
122       mathSum+=student.Smath
123       englishSum+=student.Senglish
124       physicsSum+=student.Sphysics
125     })
126     mathAverage=mathSum/count
127     englishAverage=englishSum/count
128     physicsAverage=physicsSum/count
129     println("course\t\taverage\tmin\tmax(males)")
130     println("Math:\t\t"+mathAverage+"\t\t"+mathMin+"\t"+mathMax)
131     println("English:\t"+englishAverage+"\t\t"+englishMin+"\t"+englishMax)
132     println("Physics:\t"+physicsAverage+"\t\t"+physicsMin+"\t"+physicsMax)
133   }
134   def sortfemale(list:ArrayBuffer[Student]): Unit = {
135     var count=0
136     var mathSum = 0
137     var mathAverage = 0
138     var mathMin = 100
139     var mathMax = 0
140     var englishSum = 0
141     var englishAverage = 0
142     var englishMin = 100
143     var englishMax = 0
144     var physicsSum = 0
145     var physicsAverage = 0
146     var physicsMin = 100
147     var physicsMax = 0
148     list.foreach(student => {
149       count+=1
150       if(student.Smath>mathMax){
151         mathMax=student.Smath
152       }else if(student.Smath<mathMin){
153         mathMin=student.Smath
154       }
155       if(student.Senglish>englishMax){
156         englishMax=student.Senglish
157       }else if(student.Senglish<englishMin){
158         englishMin=student.Senglish
159       }
160       if(student.Sphysics>physicsMax){
161         physicsMax=student.Sphysics
162       }else if(student.Sphysics<physicsMin){
163         physicsMin=student.Sphysics
164       }
165       mathSum+=student.Smath
166       englishSum+=student.Senglish
167       physicsSum+=student.Sphysics
168     })
169     mathAverage=mathSum/count
170     englishAverage=englishSum/count
171     physicsAverage=physicsSum/count
172     println("course\t\taverage\tmin\tmax(females)")
173     println("Math:\t\t"+mathAverage+"\t\t"+mathMin+"\t"+mathMax)
174     println("English:\t"+englishAverage+"\t\t"+englishMin+"\t"+englishMax)
175     println("Physics:\t"+physicsAverage+"\t\t"+physicsMin+"\t"+physicsMax)
176   }
177 }
View Code

运行截图:

 

posted @ 2020-02-03 21:29  masuo  阅读(105)  评论(0编辑  收藏  举报