📖 Scenario: You are creating a simple program to check the temperature and give advice on what to wear.
🎯 Goal: Build a MATLAB script that uses if-elseif-else statements to print clothing advice based on the temperature.
📋 What You'll Learn
Create a variable temperature with a specific value
Create a variable cold_threshold with a specific value
Use if-elseif-else statements to check the temperature against thresholds
Print the correct advice message based on the temperature
💡 Why This Matters
🌍 Real World
Checking temperature and giving clothing advice is common in weather apps and daily planning tools.
💼 Career
Understanding conditional statements is essential for programming logic in many software development jobs.
Progress0 / 4 steps
1
DATA SETUP: Create the temperature variable
Create a variable called temperature and set it to 15.
MATLAB
Hint
Use the assignment operator = to set temperature to 15.
2
CONFIGURATION: Create the cold threshold variable
Create a variable called cold_threshold and set it to 10.
MATLAB
Hint
Set cold_threshold to 10 using the assignment operator.
3
CORE LOGIC: Use if-elseif-else to check temperature
Write an if-elseif-else statement that checks if temperature is less than cold_threshold. If yes, assign advice the value 'Wear a coat.'. Else if temperature is less than 20, assign advice the value 'Wear a jacket.'. Otherwise, assign advice the value 'Wear a t-shirt.'.
MATLAB
Hint
Use if, elseif, and else keywords with conditions and assign advice accordingly.
4
OUTPUT: Display the advice
Use disp to print the value of the variable advice.
MATLAB
Hint
Use disp(advice) to show the advice on the screen.
Practice
(1/5)
1. What does an if-elseif-else statement do in MATLAB?
easy
A. It creates a variable.
B. It repeats a block of code multiple times.
C. It defines a function.
D. It chooses one action based on conditions.
Solution
Step 1: Understand the purpose of if-elseif-else
The if-elseif-else structure lets the program check conditions one by one and run the code for the first true condition.
Step 2: Compare with other options
Repeating code is done by loops, functions define reusable code, and variables store data, so these are not correct.
Final Answer:
It chooses one action based on conditions. -> Option D
Quick Check:
If-elseif-else = choose action [OK]
Hint: If you see conditions, think if-elseif-else [OK]
Common Mistakes:
Confusing if-elseif-else with loops
Thinking it defines functions
Believing it creates variables
2. Which of the following is the correct syntax to start an if-elseif-else block in MATLAB?
easy
A. if x > 0
elseif x == 0
else
end
B. if x > 0 elseif x == 0 else end
C. if (x > 0) then elseif (x == 0) else end
D. if x > 0; elseif x == 0; else; end
Solution
Step 1: Check MATLAB syntax rules
MATLAB requires each keyword (if, elseif, else, end) on its own line or separated by line breaks, without 'then'.
Step 2: Analyze each option
if x > 0
elseif x == 0
else
end uses line breaks correctly. if x > 0 elseif x == 0 else end misses line breaks. if (x > 0) then elseif (x == 0) else end uses 'then' which is invalid. if x > 0; elseif x == 0; else; end uses semicolons incorrectly in control flow.
Final Answer:
if x > 0
elseif x == 0
else
end -> Option A
Quick Check:
MATLAB if-elseif-else needs line breaks [OK]
Hint: Use line breaks, no 'then' in MATLAB if statements [OK]
score is 75, first condition score >= 90 is false, second score >= 80 is false, third score >= 70 is true.
Step 2: Assign grade and display
Since third condition is true, grade = 'C' is assigned and displayed.
Final Answer:
C -> Option A
Quick Check:
75 >= 70 -> grade C [OK]
Hint: Check conditions top to bottom, first true wins [OK]
Common Mistakes:
Choosing grade B or A incorrectly
Ignoring order of conditions
Forgetting to use end to close if block
4. Identify the error in this MATLAB code snippet:
value = 10;
if value > 5
disp('Greater than 5')
elseif value < 5
disp('Less than 5')
else
disp('Equal to 5')
medium
A. Missing semicolon after disp statements
B. Missing end to close the if block
C. Incorrect use of elseif instead of else if
D. Using single quotes instead of double quotes
Solution
Step 1: Check if block completeness
The if-elseif-else block must end with an end keyword in MATLAB to close it properly.
Step 2: Verify other syntax elements
Semicolons after disp are optional, elseif is correct keyword, and single quotes are correct for strings in MATLAB.
Final Answer:
Missing end to close the if block -> Option B
Quick Check:
if blocks need end [OK]
Hint: Always close if with end [OK]
Common Mistakes:
Forgetting end keyword
Confusing elseif with else if
Thinking semicolons are mandatory after disp
5. You want to write a MATLAB function that returns: - 'Positive' if input > 0 - 'Zero' if input == 0 - 'Negative' if input < 0 Which if-elseif-else structure correctly implements this?
hard
A. if x > 0
result = 'Positive';
else if x == 0
result = 'Zero';
else
result = 'Negative';
end
B. if x >= 0
result = 'Positive';
elseif x == 0
result = 'Zero';
else
result = 'Negative';
end
C. if x > 0
result = 'Positive';
elseif x == 0
result = 'Zero';
else
result = 'Negative';
end
D. if x > 0
result = 'Positive';
elseif x > 0
result = 'Zero';
else
result = 'Negative';
end
Solution
Step 1: Check condition order and correctness
if x > 0
result = 'Positive';
elseif x == 0
result = 'Zero';
else
result = 'Negative';
end correctly checks x > 0 first, then x == 0, else negative. This covers all cases without overlap.
Step 2: Analyze other options for errors
if x >= 0
result = 'Positive';
elseif x == 0
result = 'Zero';
else
result = 'Negative';
end wrongly treats x == 0 as Positive. if x > 0
result = 'Positive';
else if x == 0
result = 'Zero';
else
result = 'Negative';
end uses invalid 'else if' instead of 'elseif'. if x > 0
result = 'Positive';
elseif x > 0
result = 'Zero';
else
result = 'Negative';
end repeats x > 0 condition twice, missing zero case.
Final Answer:
if x > 0
result = 'Positive';
elseif x == 0
result = 'Zero';
else
result = 'Negative';
end -> Option C
Quick Check:
Check conditions in order, use elseif [OK]
Hint: Use elseif, not else if; order conditions carefully [OK]
Common Mistakes:
Using else if instead of elseif
Overlapping conditions
Wrong order causing incorrect results
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.