Bird
Raised Fist0
Rustprogramming~15 mins

Mutable variables in Rust - Mini Project: Build & Apply

Choose your learning style10 modes available
Mutable variables
๐Ÿ“– Scenario: Imagine you are keeping track of the number of apples in a basket. Sometimes apples are added or taken away. You want to write a program that can change the number of apples as needed.
๐ŸŽฏ Goal: You will create a mutable variable to hold the number of apples, change its value, and then print the final count.
๐Ÿ“‹ What You'll Learn
Create a mutable variable called apples with the initial value 5.
Change the value of apples to 10.
Print the value of apples.
๐Ÿ’ก Why This Matters
๐ŸŒ Real World
Mutable variables let programs keep track of changing information, like counting items or updating scores.
๐Ÿ’ผ Career
Understanding mutable variables is essential for writing programs that handle data that changes over time, a common task in software development.
Progress0 / 4 steps
1
Create a mutable variable
Create a mutable variable called apples and set it to 5.
Rust
Hint

Use let mut to create a variable that can change.

2
Change the variable value
Change the value of the mutable variable apples to 10.
Rust
Hint

Assign a new value to apples without using let.

3
Print the variable
Print the value of the variable apples using println!.
Rust
Hint

Use println!("{}", apples); to show the value.

4
Run and see the output
Run the program to see the final number of apples printed.
Rust
Hint

The program should print 10 because that is the final value of apples.

Practice

(1/5)
1. What keyword do you use in Rust to make a variable mutable?
easy
A. let
B. var
C. change
D. mut

Solution

  1. Step 1: Understand variable declaration in Rust

    Rust uses let to declare variables, but by default they are immutable.
  2. Step 2: Identify how to make variables mutable

    Adding mut after let makes the variable mutable.
  3. Final Answer:

    mut -> Option D
  4. Quick Check:

    Use let mut for mutable variables [OK]
Hint: Remember: let mut makes variables changeable [OK]
Common Mistakes:
  • Using 'var' instead of 'mut'
  • Forgetting 'mut' and expecting change
  • Using 'let' alone for mutable variables
2. Which of the following is the correct syntax to declare a mutable integer variable named x with value 5 in Rust?
easy
A. let mut x = 5;
B. var mut x = 5;
C. mut let x = 5;
D. let x = 5;

Solution

  1. Step 1: Recall correct order of keywords

    In Rust, let comes first, then mut to mark mutability.
  2. Step 2: Check each option's syntax

    let mut x = 5; uses let mut x = 5; which is correct. Others have wrong order or invalid keywords.
  3. Final Answer:

    let mut x = 5; -> Option A
  4. Quick Check:

    Correct syntax is let mut variable = value; [OK]
Hint: Always write let mut in that order [OK]
Common Mistakes:
  • Swapping 'mut' and 'let'
  • Using 'var' instead of 'let'
  • Omitting 'mut' when variable changes
3. What will be the output of this Rust code?
fn main() {
    let mut count = 1;
    count = count + 2;
    println!("{}", count);
}
medium
A. 3
B. 2
C. 1
D. Compilation error

Solution

  1. Step 1: Understand variable initialization and mutation

    The variable count starts at 1 and is mutable.
  2. Step 2: Calculate the new value after addition

    Adding 2 to 1 gives 3, so count becomes 3.
  3. Final Answer:

    3 -> Option A
  4. Quick Check:

    Mutable variable updated correctly outputs 3 [OK]
Hint: Mutable lets you add and update variable values [OK]
Common Mistakes:
  • Expecting original value without mutation
  • Thinking code causes error without 'mut'
  • Confusing output with variable name
4. Identify the error in this Rust code snippet:
fn main() {
    let x = 10;
    x = 20;
    println!("{}", x);
}
medium
A. Missing semicolon after println!
B. Variable x is not declared
C. Cannot assign twice to immutable variable x
D. Incorrect println! syntax

Solution

  1. Step 1: Check variable mutability

    Variable x is declared without mut, so it is immutable.
  2. Step 2: Analyze reassignment attempt

    Assigning x = 20; tries to change an immutable variable, causing a compile error.
  3. Final Answer:

    Cannot assign twice to immutable variable x -> Option C
  4. Quick Check:

    Immutable variables cannot be reassigned [OK]
Hint: Add mut to allow variable reassignment [OK]
Common Mistakes:
  • Ignoring need for 'mut' to reassign
  • Thinking println! needs semicolon error
  • Assuming variable is undeclared
5. You want to create a counter that increases by 1 every time a function is called. Which Rust code correctly uses a mutable variable to achieve this?
fn main() {
    let mut counter = 0;
    increment(&mut counter);
    increment(&mut counter);
    println!("{}", counter);
}

fn increment(count: &mut i32) {
    *count += 1;
}
hard
A. Code fails because counter is immutable
B. Code compiles and prints 2
C. Code prints 0 because counter is not updated
D. Code fails due to wrong function signature

Solution

  1. Step 1: Check mutability of counter

    Counter is declared mutable with let mut counter = 0;.
  2. Step 2: Understand function parameter and mutation

    Function increment takes a mutable reference and increases the value by 1 each call.
  3. Step 3: Count increments and final output

    Called twice, counter increases from 0 to 2, then printed.
  4. Final Answer:

    Code compiles and prints 2 -> Option B
  5. Quick Check:

    Mutable variable with mutable reference updates correctly [OK]
Hint: Use let mut and mutable references to update variables [OK]
Common Mistakes:
  • Forgetting 'mut' on variable or reference
  • Passing immutable reference to function
  • Expecting counter to update without mutable reference
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard