ruby-on-rails – 使用一系列等级计算字母等级
发布时间:2020-12-17 03:37:01 所属栏目:百科 来源:网络整理
导读:这里有Noob和 Ruby.通过一些练习并撞墙. 练习:计算一系列成绩的字母等级 创建一个方法get_grade,它接受一组测试分数.数组中的每个分数应该在0到100之间,其中100是最大分数. 计算平均分数并将字母等级作为字符串返回,即“A”,“B”,“C”,“D”,“E”或“F”
这里有Noob和
Ruby.通过一些练习并撞墙.
练习:计算一系列成绩的字母等级 创建一个方法get_grade,它接受一组测试分数.数组中的每个分数应该在0到100之间,其中100是最大分数. 计算平均分数并将字母等级作为字符串返回,即“A”,“B”,“C”,“D”,“E”或“F”. 我一直在回复错误: avg.rb:1: syntax error,unexpected tLBRACK,expecting ')' def get_grade([100,90,80]) ^ avg.rb:1: syntax error,unexpected ')',expecting $end 这是我到目前为止所拥有的.我想坚持下面的方法或.join,因为我正在尝试使用我们在课堂上学习的方法.因此,总和,注入等不一定有用.我提前为请求的特殊性道歉:)我确信有更好的方法可以减少代码,但我只是想以这种方式开始学习它. def get_grade([100,80]) get_grade = (array[0] + array[1] + array[2]).to_i / array.length.to_i case get_grade when 90..100 "A" when 80..90 "B" when 70..80 "C" when 60..70 "D" when 0..60 "F" else "Error" end end puts get_grade([100,80]) 解决方法
您不能将[100,80]之类的数组文字随机转储到函数定义的参数列表中.通过函数体判断,我认为你的意思是接受一个参数数组:
def get_grade(array) grade = (array[0].to_i + array[1].to_i + array[2].to_i) / array.length case grade # unchanged end end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |