Use a dictionary, a loop, and conditionals to print each subject with its letter grade in alphabetical order.
You start with:
val grades = scala.collection.mutable.TreeMap[String, Int]()
grades("Math") = 92
grades("English") = 78
grades("Science") = 85
grades("History") = 67
Build:
English: C History: D Math: A Science: B
Rules:
- Visit the subjects in alphabetical order.
- Look up each subject's score in the dictionary and apply the grading scale (90+ A, 80s B, 70s C, 60s D, else F).
- On each iteration print the subject, a colon and a space, then the grade, for example
English: C.
Use a
TreeMap - it iterates its keys in sorted order automatically.
val grades = scala.collection.mutable.TreeMap[String, Int]()
grades("Math") = 92
grades("English") = 78
grades("Science") = 85
grades("History") = 67
for (subject <- grades.keys) {
val score = grades(subject)
var grade = ""
if (score >= 90) {
grade = "A"
} else if (score >= 80) {
grade = "B"
} else if (score >= 70) {
grade = "C"
} else if (score >= 60) {
grade = "D"
} else {
grade = "F"
}
println(subject + ": " + grade)
}
Free plan: 30 tutor messages. Premium is unlimited.
Saved
Ctrl + Enter to check
