Initial commit
This commit is contained in:
8
exercises/02_functions/README.md
Normal file
8
exercises/02_functions/README.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# Functions
|
||||
|
||||
Here, you'll learn how to write functions and how the Rust compiler can help you debug errors even
|
||||
in more complex code.
|
||||
|
||||
## Further information
|
||||
|
||||
- [How Functions Work](https://doc.rust-lang.org/book/ch03-03-how-functions-work.html)
|
||||
7
exercises/02_functions/functions1.rs
Normal file
7
exercises/02_functions/functions1.rs
Normal file
@@ -0,0 +1,7 @@
|
||||
// TODO: Add some function with the name `call_me` without arguments or a return value.
|
||||
|
||||
fn call_me() {}
|
||||
|
||||
fn main() {
|
||||
call_me(); // Don't change this line
|
||||
}
|
||||
10
exercises/02_functions/functions2.rs
Normal file
10
exercises/02_functions/functions2.rs
Normal file
@@ -0,0 +1,10 @@
|
||||
// TODO: Add the missing type of the argument `num` after the colon `:`.
|
||||
fn call_me(num: i32) {
|
||||
for i in 0..num {
|
||||
println!("Ring! Call number {}", i + 1);
|
||||
}
|
||||
}
|
||||
|
||||
fn main() {
|
||||
call_me(3);
|
||||
}
|
||||
10
exercises/02_functions/functions3.rs
Normal file
10
exercises/02_functions/functions3.rs
Normal file
@@ -0,0 +1,10 @@
|
||||
fn call_me(num: u8) {
|
||||
for i in 0..num {
|
||||
println!("Ring! Call number {}", i + 1);
|
||||
}
|
||||
}
|
||||
|
||||
fn main() {
|
||||
// TODO: Fix the function call.
|
||||
call_me(3);
|
||||
}
|
||||
22
exercises/02_functions/functions4.rs
Normal file
22
exercises/02_functions/functions4.rs
Normal file
@@ -0,0 +1,22 @@
|
||||
// This store is having a sale where if the price is an even number, you get 10
|
||||
// Rustbucks off, but if it's an odd number, it's 3 Rustbucks off.
|
||||
// Don't worry about the function bodies themselves, we are only interested in
|
||||
// the signatures for now.
|
||||
|
||||
fn is_even(num: i64) -> bool {
|
||||
num % 2 == 0
|
||||
}
|
||||
|
||||
// TODO: Fix the function signature.
|
||||
fn sale_price(price: i64) -> i64 {
|
||||
if is_even(price) {
|
||||
price - 10
|
||||
} else {
|
||||
price - 3
|
||||
}
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let original_price = 51;
|
||||
println!("Your sale price is {}", sale_price(original_price));
|
||||
}
|
||||
9
exercises/02_functions/functions5.rs
Normal file
9
exercises/02_functions/functions5.rs
Normal file
@@ -0,0 +1,9 @@
|
||||
// TODO: Fix the function body without changing the signature.
|
||||
fn square(num: i32) -> i32 {
|
||||
num * num
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let answer = square(3);
|
||||
println!("The square of 3 is {answer}");
|
||||
}
|
||||
Reference in New Issue
Block a user