【发布时间】:2022-01-01 16:11:04
【问题描述】:
下面的代码用于计算考试成绩。 5 个主题名称和从这些主题收到的 5 个分数由用户记录在创建的空数组中。
我已经解决了这里的一切。但我想在 "cycle" 之后添加 "th" "st" "rd" "nd"。写成“请输入课程”和“请输入点”
例如: "请输入第一个点"
但是用我的代码我可以: "请输入 1 分"
我尝试使用 "When" 条件执行此过程,但我不能,因为循环参数 "cycle" 不支持 last() 功能
例如:
when (cycle.last()) {
1 -> "st"
2 -> "nd"
}
如果工作 11st, 531st, 22nd, 232nd, 等,它会给我一个结果。这就是我想要的
fun main() {
var subject = Array<String>(5){""}
var point = Array<Int>(5){0}
for (cycle in 0 until subject.count()) {
println("Please type ${cycle+1} lesson")
var typeLesson = readLine()!!.toString()
subject[cycle] = typeLesson
println("Please type ${cycle+1} point")
var typePoint = readLine()!!.toInt()
point[cycle] = typePoint
}
var sum = 0
for (cycle in 0 until point.count()) {
println("${subject[cycle]} : ${point[cycle]}")
sum = sum + point[cycle]/point.count()
}
println("Average point: $sum")
}
【问题讨论】:
-
你知道是
11th,而不是11st吗?