📖 Scenario: You are creating a simple program that decides if a number is positive or not. This is like checking if the temperature is above zero to decide if you need a jacket.
🎯 Goal: Build a Rust program that uses an if-else expression to check if a number is positive and prints the result.
📋 What You'll Learn
Create a variable called number with the value 10
Create a variable called result that uses an if-else expression to check if number is greater than 0
If number is greater than 0, result should be the string "Positive"
Otherwise, result should be the string "Not positive"
Print the value of result
💡 Why This Matters
🌍 Real World
If-else expressions are used in many programs to make decisions, like checking if a user is logged in or if a payment is successful.
💼 Career
Understanding if-else expressions is essential for writing clear and efficient code in Rust and many other programming languages.
Progress0 / 4 steps
1
Create the number variable
Create a variable called number and set it to 10.
Rust
Hint
Use let number = 10; inside the main function.
2
Create the result variable with if-else expression
Create a variable called result that uses an if-else expression to check if number is greater than 0. If yes, set result to "Positive", else set it to "Not positive".
Rust
Hint
Use let result = if number > 0 { "Positive" } else { "Not positive" };.
3
Print the result
Add a println! statement to print the value of result.
Rust
Hint
Use println!("{}", result); to print the result.
4
Run and see the output
Run the program and observe the output. It should print Positive.
Rust
Hint
The program should print Positive because 10 is greater than 0.
Practice
(1/5)
1. What does an if-else expression in Rust do?
easy
A. Declares a variable without value
B. Repeats a block of code multiple times
C. Defines a new function
D. Chooses between two options and returns a value
Solution
Step 1: Understand the purpose of if-else
An if-else expression lets the program pick one of two paths based on a condition.
Step 2: Recognize that it returns a value
In Rust, if-else expressions return a value that can be stored in a variable.
Final Answer:
Chooses between two options and returns a value -> Option D
Quick Check:
If-else expression = choice with value [OK]
Hint: If-else picks one path and returns a value [OK]
Common Mistakes:
Thinking if-else repeats code like a loop
Confusing if-else with function definition
Ignoring that if-else returns a value
2. Which of the following is the correct syntax for an if-else expression in Rust?
easy
A. let x = if condition { 5 } else { 10 };
B. if (condition) then { 5 } else { 10 };
C. let x = if condition: 5 else: 10;
D. let x = if condition { 5 } elseif { 10 };
Solution
Step 1: Check Rust if-else syntax
Rust uses if condition { value1 } else { value2 } with braces and no parentheses.
Step 2: Identify correct option
let x = if condition { 5 } else { 10 }; matches Rust syntax exactly with variable assignment and braces.
Final Answer:
let x = if condition { 5 } else { 10 }; -> Option A
Quick Check:
Rust if-else syntax = let x = if condition { 5 } else { 10 }; [OK]
Hint: Use braces and no parentheses in Rust if-else [OK]
Common Mistakes:
Using parentheses around condition
Writing elseif instead of else if
Using colons instead of braces
3. What is the output of this Rust code?
let number = 7;
let result = if number % 2 == 0 { "even" } else { "odd" };
println!("{}", result);
medium
A. odd
B. even
C. 7
D. Syntax error
Solution
Step 1: Check the condition number % 2 == 0
7 % 2 equals 1, which is not 0, so condition is false.
Step 2: Determine which branch runs
Since condition is false, the else branch runs, returning "odd".
Final Answer:
odd -> Option A
Quick Check:
7 is odd, so output = odd [OK]
Hint: Check condition result to pick if or else branch [OK]
Common Mistakes:
Assuming 7 is even
Confusing modulo operator
Expecting number to print instead of result
4. Identify the error in this Rust code:
let x = 10;
let y = if x > 5 { 1 };
println!("{}", y);
medium
A. Variable y is not declared
B. Incorrect comparison operator
C. Missing else branch in if expression
D. println! macro syntax error
Solution
Step 1: Check if-else expression completeness
When assigning with if, Rust requires both if and else branches to return a value.
Step 2: Identify missing else branch
The code has no else branch, so y's value is undefined, causing a compile error.
Final Answer:
Missing else branch in if expression -> Option C
Quick Check:
if-else must have else when used as expression [OK]
Hint: Always include else when assigning from if [OK]
Common Mistakes:
Forgetting else branch when assigning
Thinking if alone returns a value
Misreading error as println! issue
5. You want to assign a variable grade based on a score: if score is 90 or above, grade is 'A', else 'F'. Which code correctly uses if-else expression?
hard
A. let grade = if score > 90 { 'A' } else if score < 90 { 'F' };
B. let grade = if score >= 90 { 'A' } else { 'F' };
C. let grade = if score >= 90 { 'A' }; else { 'F' };
D. let grade = if score >= 90 then { 'A' } else { 'F' };
Solution
Step 1: Check correct if-else expression syntax
Rust uses if condition { value } else { value } without 'then' or semicolons inside.
Step 2: Validate condition and branches
let grade = if score >= 90 { 'A' } else { 'F' }; correctly checks >= 90 and returns 'A' or 'F' in else branch.
Final Answer:
let grade = if score >= 90 { 'A' } else { 'F' }; -> Option B
Quick Check:
Correct syntax and logic = let grade = if score >= 90 { 'A' } else { 'F' }; [OK]
Hint: Use braces and else for complete if-else expression [OK]
Common Mistakes:
Using 'then' keyword
Missing else branch
Incorrect semicolon placement
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.