summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormo8it <mo8it@proton.me>2024-05-22 16:35:57 +0200
committermo8it <mo8it@proton.me>2024-05-22 16:35:57 +0200
commitf2c3dcab3ac20e5aeddc7f792409727803da8bb8 (patch)
treec51f0ee2e40ce58001f834d629d29601f164af65
parent73e84f83791f00ef8ccfe438bc018d2c0a9b21fe (diff)
quiz1 solution
-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);
+ }
+}