📖 Scenario: You are working in a store that sells fruits. You want to check which fruits have prices less than or equal to a certain budget.
🎯 Goal: Create a MATLAB script that uses comparison operators to find which fruits are affordable within a given budget.
📋 What You'll Learn
Create a dictionary (containers.Map) called fruitPrices with exact entries: 'apple' = 3, 'banana' = 1, 'cherry' = 5, 'date' = 2
Create a variable called budget and set it to 3
Use a for loop with variables fruit and price to iterate over fruitPrices.keys and check prices using comparison operators
Create a logical array called affordable that stores true for fruits with price less than or equal to budget
Print the names of fruits that are affordable using disp
💡 Why This Matters
🌍 Real World
Stores and shops often need to filter products based on price limits to help customers find affordable options.
💼 Career
Understanding comparison operators and data structures like dictionaries is essential for data filtering and decision-making in programming jobs.
Progress0 / 4 steps
1
Create the fruit prices dictionary
Create a containers.Map called fruitPrices with these exact entries: 'apple' = 3, 'banana' = 1, 'cherry' = 5, and 'date' = 2.
MATLAB
Hint
Use containers.Map with two cell arrays: one for keys and one for values.
2
Set the budget variable
Create a variable called budget and set it to 3.
MATLAB
Hint
Just assign the number 3 to the variable budget.
3
Check which fruits are affordable
Use a for loop with variable fruit to iterate over fruitPrices.keys. Inside the loop, get the price of each fruit from fruitPrices. Create a logical array called affordable that stores true if price is less than or equal to budget, otherwise false.
MATLAB
Hint
Use fruitPrices.keys to get all fruits, then loop with an index. Compare each price with budget using <=.
4
Display affordable fruits
Use a for loop with index i to iterate over affordable. Inside the loop, if affordable(i) is true, use disp to print the fruit name from keysList{i}.
MATLAB
Hint
Loop over affordable and print fruit names where the value is true.
Practice
(1/5)
1. What does the MATLAB expression 5 > 3 return?
easy
A. 0 (false)
B. 1 (true)
C. Error
D. 5
Solution
Step 1: Understand the comparison operator
The operator > checks if the left value is greater than the right value.
Step 2: Compare the values 5 and 3
Since 5 is greater than 3, the expression returns true, which is represented as 1 in MATLAB.
Final Answer:
1 (true) -> Option B
Quick Check:
5 > 3 = 1 [OK]
Hint: Greater than means left number bigger than right [OK]
Common Mistakes:
Confusing true (1) with false (0)
Thinking it returns the bigger number
Using wrong operator like < instead of >
2. Which of the following is the correct MATLAB syntax to check if variable a is equal to 10?
easy
A. a = 10
B. a === 10
C. a != 10
D. a == 10
Solution
Step 1: Identify the equality operator in MATLAB
MATLAB uses double equal signs == to test equality, not a single equal sign.
Step 2: Check each option
a = 10 assigns 10 to a, not compare. a == 10 correctly compares a to 10. a === 10 uses triple equals which is invalid in MATLAB. a != 10 uses not equal operator incorrectly.
Final Answer:
a == 10 -> Option D
Quick Check:
Equality test uses == [OK]
Hint: Use double equals (==) to compare, single equals (=) assigns [OK]
Common Mistakes:
Using single = instead of ==
Using === which is not MATLAB syntax
Confusing != with ~= for not equal
3. What is the output of the following MATLAB code?
a = [1 3 5]; b = [2 3 4]; result = a <= b;
medium
A. [1 1 0]
B. [1 0 0]
C. [0 1 1]
D. [0 0 1]
Solution
Step 1: Understand element-wise comparison
The operator <= compares each element of a with the corresponding element of b.
Step 2: Compare each pair
1 <= 2 is true (1), 3 <= 3 is true (1), 5 <= 4 is false (0).
Final Answer:
[1 1 0] -> Option A
Quick Check:
Element-wise <= comparison = [1 1 0] [OK]
Hint: Compare arrays element-wise for <= operator [OK]
Common Mistakes:
Thinking it returns a single value
Mixing up < and <= operators
Forgetting element-wise comparison
4. Identify the error in this MATLAB code snippet:
if a = 5
disp('Equal');
end
medium
A. Missing semicolon after assignment
B. disp function is incorrect
C. Using = instead of == in if condition
D. if statement needs parentheses
Solution
Step 1: Check the if condition syntax
In MATLAB, the if condition requires a logical expression, not an assignment.
Step 2: Identify the operator mistake
The code uses = which assigns 5 to a, instead of == which compares a to 5.
Final Answer:
Using = instead of == in if condition -> Option C
Quick Check:
Comparison uses ==, not = in conditions [OK]
Hint: Use == for comparison inside if, not = [OK]
Common Mistakes:
Using = instead of ==
Adding unnecessary parentheses
Misusing disp function
5. Given two arrays A = [4 7 2 9] and B = [5 7 3 8], write a MATLAB expression using comparison operators to create a logical array that is true where elements of A are greater than or equal to B and false otherwise. What is the resulting array?
hard
A. [0 1 0 1]
B. [1 1 1 1]
C. [0 0 0 0]
D. [1 0 1 0]
Solution
Step 1: Use element-wise comparison operator
Use the operator >= to compare each element of A with B element-wise.
Step 2: Compare each element pair
4 >= 5 is false (0), 7 >= 7 is true (1), 2 >= 3 is false (0), 9 >= 8 is true (1).
Final Answer:
[0 1 0 1] -> Option A
Quick Check:
A >= B = [0 1 0 1] [OK]
Hint: Use >= for element-wise greater or equal comparison [OK]
Common Mistakes:
Using > instead of >=
Confusing logical array with numeric values
Mixing element-wise with matrix operations
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.