2024-05-22 15:35:57 +01:00
|
|
|
// 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);
|
|
|
|
}
|
|
|
|
}
|