summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--exercises/quizzes/quiz1.rs17
-rw-r--r--solutions/quizzes/quiz1.rs32
2 files changed, 37 insertions, 12 deletions
diff --git a/exercises/quizzes/quiz1.rs b/exercises/quizzes/quiz1.rs
index edb672e..5f17514 100644
--- a/exercises/quizzes/quiz1.rs
+++ b/exercises/quizzes/quiz1.rs
@@ -10,27 +10,22 @@
// quantity bought.
// Put your function here!
-// fn calculate_price_of_apples {
+// fn calculate_price_of_apples(???) -> ??? {
fn main() {
// You can optionally experiment here.
}
+// Don't change the tests!
#[cfg(test)]
mod tests {
use super::*;
- // Don't modify this test!
#[test]
fn verify_test() {
- let price1 = calculate_price_of_apples(35);
- let price2 = calculate_price_of_apples(40);
- let price3 = calculate_price_of_apples(41);
- let price4 = calculate_price_of_apples(65);
-
- assert_eq!(70, price1);
- assert_eq!(80, price2);
- assert_eq!(41, price3);
- assert_eq!(65, price4);
+ assert_eq!(calculate_price_of_apples(35), 70);
+ assert_eq!(calculate_price_of_apples(40), 80);
+ assert_eq!(calculate_price_of_apples(41), 41);
+ assert_eq!(calculate_price_of_apples(65), 65);
}
}
diff --git a/solutions/quizzes/quiz1.rs b/solutions/quizzes/quiz1.rs
index 4e18198..bc76166 100644
--- a/solutions/quizzes/quiz1.rs
+++ b/solutions/quizzes/quiz1.rs
@@ -1 +1,31 @@
-// Solutions will be available before the stable release. Thank you for testing the beta version 🥰
+// Mary is buying apples. The price of an apple is calculated as follows:
+// - An apple costs 2 rustbucks.
+// - If Mary buys more than 40 apples, each apple only costs 1 rustbuck!
+// Write a function that calculates the price of an order of apples given the
+// quantity bought.
+
+fn calculate_price_of_apples(n_apples: u64) -> u64 {
+ if n_apples > 40 {
+ n_apples
+ } else {
+ 2 * n_apples
+ }
+}
+
+fn main() {
+ // You can optionally experiment here.
+}
+
+// Don't change the tests!
+#[cfg(test)]
+mod tests {
+ use super::*;
+
+ #[test]
+ fn verify_test() {
+ assert_eq!(calculate_price_of_apples(35), 70);
+ assert_eq!(calculate_price_of_apples(40), 80);
+ assert_eq!(calculate_price_of_apples(41), 41);
+ assert_eq!(calculate_price_of_apples(65), 65);
+ }
+}