Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def sum a
- s = 0
- a.each {|x| s += x}
- s
- end
- noten = [
- 4.0, # algdat
- 3.3, # statistik
- 2.0, # swe 1
- 4.0, # datenbanken
- 1.0, # compiler
- 2.0, # maschprog
- 2.0, # numerik
- 3.0, # techphy
- 4.0, # rechtech
- 1.0, # rcr
- 1.7 # sivs
- ]
- noten_neu = [
- 1.7, # c++
- 2.7, # sysprog
- 2.0, # twics
- 2.0 # dva
- ]
- def calcMark noten,ezs,awf,dipl,os,dako
- hMark = Array.new
- hMark.push((2.0+awf)/2)
- hMark.push(dipl)
- hMark.push(dipl)
- hMark.push(dipl)
- hMark.push(ezs)
- hMark.push(os)
- hMark.push(dako)
- res = sum(hMark + noten)/(hMark.length + noten.length)
- res.to_s[0..2]
- end
- aw = [2.0]
- puts "Notenstand 17.07.2006: #{sum(noten)/noten.length}"
- puts "Notenstand 28.07.2006 (ohne aw): #{sum(noten + noten_neu)/(noten.length + noten_neu.length)}"
- puts "Notenstand 28.07.2006 (mit aw): #{sum(noten + noten_neu + aw)/(noten.length + noten_neu.length + aw.length)}"
- m=[1.0,1.3,1.7,2.0,2.3,2.7,3.0,3.3,3.7,4.0]
- good = Array.new
- noten += noten_neu
- m.each do |ezs|
- m.each do |os|
- m.each do |dako|
- m.each do |awf|
- m.each do |dipl|
- mark = calcMark(noten,ezs,awf,dipl,os,dako).to_f
- if mark <= 2.3
- good.push([ezs,os,dako,awf,dipl,mark])
- end
- #puts "#{(ezs+os+dako)/3.0}/#{dipl}/#{awf}"
- end
- end
- end
- end
- end
- good.each{|ezs,os,dako,awf,dipl,mark| puts "#{((ezs + os + dako + awf + dipl)/5.0).to_s[0..2]}=#{mark}" }
Add Comment
Please, Sign In to add comment