summaryrefslogtreecommitdiff
path: root/exercises/quizzes
diff options
context:
space:
mode:
authormo8it <mo8it@proton.me>2024-06-27 13:01:52 +0200
committermo8it <mo8it@proton.me>2024-06-27 13:01:52 +0200
commit64c2de95ca95c1d23dcb416723b33ccdfca9c956 (patch)
treeb39bba53ce6c372160f98e56e89a50311e8f8e83 /exercises/quizzes
parentc1707404231e5a1d7bc837e21faf34fdc51db0bf (diff)
quiz3 solution
Diffstat (limited to 'exercises/quizzes')
-rw-r--r--exercises/quizzes/quiz3.rs18
1 files changed, 9 insertions, 9 deletions
diff --git a/exercises/quizzes/quiz3.rs b/exercises/quizzes/quiz3.rs
index f3cb1bc..c877c5f 100644
--- a/exercises/quizzes/quiz3.rs
+++ b/exercises/quizzes/quiz3.rs
@@ -3,26 +3,27 @@
// - Traits
//
// An imaginary magical school has a new report card generation system written
-// in Rust! Currently the system only supports creating report cards where the
+// in Rust! Currently, the system only supports creating report cards where the
// student's grade is represented numerically (e.g. 1.0 -> 5.5). However, the
// school also issues alphabetical grades (A+ -> F-) and needs to be able to
// print both types of report card!
//
-// Make the necessary code changes in the struct ReportCard and the impl block
-// to support alphabetical report cards. Change the Grade in the second test to
-// "A+" to show that your changes allow alphabetical grades.
+// Make the necessary code changes in the struct `ReportCard` and the impl
+// block to support alphabetical report cards in addition to numerical ones.
+// TODO: Adjust the struct as described above.
struct ReportCard {
grade: f32,
student_name: String,
student_age: u8,
}
+// TODO: Adjust the impl block as described above.
impl ReportCard {
fn print(&self) -> String {
format!(
"{} ({}) - achieved a grade of {}",
- &self.student_name, &self.student_age, &self.grade
+ &self.student_name, &self.student_age, &self.grade,
)
}
}
@@ -44,21 +45,20 @@ mod tests {
};
assert_eq!(
report_card.print(),
- "Tom Wriggle (12) - achieved a grade of 2.1"
+ "Tom Wriggle (12) - achieved a grade of 2.1",
);
}
#[test]
fn generate_alphabetic_report_card() {
- // TODO: Make sure to change the grade here after you finish the exercise.
let report_card = ReportCard {
- grade: 2.1,
+ grade: "A+",
student_name: "Gary Plotter".to_string(),
student_age: 11,
};
assert_eq!(
report_card.print(),
- "Gary Plotter (11) - achieved a grade of A+"
+ "Gary Plotter (11) - achieved a grade of A+",
);
}
}