📖 Scenario: You are managing a list of daily temperatures recorded in a weather app. Each day, you add the new temperature to the end of the list.
🎯 Goal: Build a Rust program that starts with a list of temperatures, adds a new temperature at the end, and then prints the updated list.
📋 What You'll Learn
Create a vector called temperatures with the exact values 20, 22, 19, 23
Create a variable called new_temp and set it to 21
Add new_temp to the end of temperatures using the push method
Print the temperatures vector after insertion
💡 Why This Matters
🌍 Real World
Adding new data points to a list is common in apps like weather trackers, stock price monitors, or any time series data.
💼 Career
Understanding how to manipulate arrays or vectors is essential for software developers working with data collections, especially in Rust programming.
Progress0 / 4 steps
1
Create the initial temperatures vector
Create a vector called temperatures with the exact values 20, 22, 19, 23.
DSA Rust
Hint
Use let mut temperatures = vec![20, 22, 19, 23]; to create a mutable vector.
2
Create the new temperature variable
Create a variable called new_temp and set it to 21.
DSA Rust
Hint
Use let new_temp = 21; to create the new temperature variable.
3
Add the new temperature to the vector
Use the push method to add new_temp to the end of the temperatures vector.
DSA Rust
Hint
Use temperatures.push(new_temp); to add the new temperature.
4
Print the updated temperatures vector
Print the temperatures vector after adding the new temperature using println!.
DSA Rust
Hint
Use println!("{:?}", temperatures); to print the vector.
Practice
(1/5)
1. What does inserting an element at the end of an array mean in simple terms?
easy
A. Sorting the array in ascending order
B. Removing the first item from the array
C. Replacing the first item in the array
D. Adding a new item after the last existing item in the array
Solution
Step 1: Understand array structure
An array is a list of items stored in order, starting from the first to the last.
Step 2: Define insertion at the end
Inserting at the end means placing a new item right after the last item, extending the array by one.
Final Answer:
Adding a new item after the last existing item in the array -> Option D
Quick Check:
Insert at end = Add after last [OK]
Hint: Think: new item goes after the last one [OK]
Common Mistakes:
Confusing insertion at end with removal
Thinking insertion replaces an item
Mixing insertion with sorting
2. Which Rust code snippet correctly inserts the value 10 at the end of a mutable vector named vec?
easy
A. vec.push(10);
B. vec.insert(0, 10);
C. vec[vec.len()] = 10;
D. vec.append(10);
Solution
Step 1: Identify correct method to add at end
In Rust, push adds an element to the end of a vector.
Step 2: Check other options
insert(0, 10) adds at start, vec[vec.len()] = 10 causes error (index out of bounds), append(10) is invalid syntax.
Final Answer:
vec.push(10); -> Option A
Quick Check:
Use push() to add at end [OK]
Hint: Use push() to add at the end of a vector [OK]
Common Mistakes:
Using insert with wrong index
Trying to assign to vec[vec.len()] directly
Using append with a single value
3. What will be the output of this Rust code?
let mut numbers = vec![1, 2, 3];
numbers.push(4);
println!("{:?}", numbers);
medium
A. [1, 2, 3]
B. [4, 1, 2, 3]
C. [1, 2, 3, 4]
D. Compilation error
Solution
Step 1: Understand initial vector
The vector numbers starts as [1, 2, 3].
Step 2: Apply push operation
numbers.push(4) adds 4 at the end, making it [1, 2, 3, 4].
Final Answer:
[1, 2, 3, 4] -> Option C
Quick Check:
push(4) adds 4 at end [OK]
Hint: push() adds element at the end [OK]
Common Mistakes:
Thinking push adds at start
Expecting original vector unchanged
Confusing output format
4. Identify the error in this Rust code that tries to insert 5 at the end of a vector:
let numbers = vec![1, 2, 3];
numbers.push(5);
medium
A. Cannot push because vector is immutable
B. push method does not exist for vectors
C. Syntax error in push call
D. No error, code runs fine
Solution
Step 1: Check vector mutability
The vector numbers is declared without mut, so it is immutable.
Step 2: Understand push requirements
push requires the vector to be mutable to add elements.
Final Answer:
Cannot push because vector is immutable -> Option A
Quick Check:
push needs mutable vector [OK]
Hint: Declare vector as mutable to push [OK]
Common Mistakes:
Forgetting to add mut keyword
Assuming push works on immutable vectors
Misreading error as syntax problem
5. Given a vector vec with elements [2, 4, 6], write Rust code to insert the number 8 at the end and then remove the first element. What will be the final vector?
hard
A. [2, 4, 6, 8]
B. [4, 6, 8]
C. [8, 2, 4, 6]
D. [2, 4, 8]
Solution
Step 1: Insert 8 at the end
Using vec.push(8), vector becomes [2, 4, 6, 8].
Step 2: Remove the first element
Using vec.remove(0), removes 2, vector becomes [4, 6, 8].
Final Answer:
[4, 6, 8] -> Option B
Quick Check:
push then remove first = [4,6,8] [OK]
Hint: Push adds end, remove(0) deletes first [OK]
Common Mistakes:
Removing last instead of first element
Not updating vector after push
Confusing remove index
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.