Bird
Raised Fist0
MATLABdata~10 mins

If-elseif-else statements in MATLAB - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to check if the variable x is positive.

MATLAB
if [1] > 0
    disp('Positive number');
end
Drag options to blanks, or click blank then click option'
Ax
By
Cz
Dnum
Attempts:
3 left
💡 Hint
Common Mistakes
Using a variable name other than x.
Forgetting to write the variable before the comparison.
2fill in blank
medium

Complete the code to add an elseif condition checking if x is zero.

MATLAB
if x > 0
    disp('Positive number');
elseif [1] == 0
    disp('Zero');
end
Drag options to blanks, or click blank then click option'
Ay
Bx
Cnum
Dvalue
Attempts:
3 left
💡 Hint
Common Mistakes
Using assignment = instead of equality ==.
Using a wrong variable name.
3fill in blank
hard

Fix the error in the else statement syntax.

MATLAB
if x > 0
    disp('Positive');
elseif x == 0
    disp('Zero');
[1]
    disp('Negative');
end
Drag options to blanks, or click blank then click option'
Aend
Belseif
Celse if
Delse
Attempts:
3 left
💡 Hint
Common Mistakes
Writing elseif without a condition.
Writing else if as two words.
Using end instead of else.
4fill in blank
hard

Fill both blanks to complete the if-elseif-else structure checking if x is positive, zero, or negative.

MATLAB
if x [1] 0
    disp('Positive');
elseif x [2] 0
    disp('Zero');
else
    disp('Negative');
end
Drag options to blanks, or click blank then click option'
A>
B<
C==
D!=
Attempts:
3 left
💡 Hint
Common Mistakes
Using wrong comparison operators like < or !=.
Mixing up the order of conditions.
5fill in blank
hard

Fill all three blanks to create a nested if-elseif-else that checks if x is positive, zero, or negative and prints a message accordingly.

MATLAB
if [1] > 0
    disp('Positive');
elseif [2] == 0
    disp('Zero');
else
    disp([3]);
end
Drag options to blanks, or click blank then click option'
Ax
C'Negative number'
D'Negative'
Attempts:
3 left
💡 Hint
Common Mistakes
Using different variable names in conditions.
Forgetting to put quotes around the message string.

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

  1. 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.
  2. 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.
  3. Final Answer:

    It chooses one action based on conditions. -> Option D
  4. 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

  1. 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'.
  2. 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.
  3. Final Answer:

    if x > 0 elseif x == 0 else end -> Option A
  4. Quick Check:

    MATLAB if-elseif-else needs line breaks [OK]
Hint: Use line breaks, no 'then' in MATLAB if statements [OK]
Common Mistakes:
  • Using 'then' keyword
  • Putting all keywords on one line without breaks
  • Using semicolons after if/elseif/else
3. What will be the output of this MATLAB code?
score = 75;
if score >= 90
    grade = 'A';
elseif score >= 80
    grade = 'B';
elseif score >= 70
    grade = 'C';
else
    grade = 'F';
end
disp(grade)
medium
A. C
B. B
C. A
D. F

Solution

  1. Step 1: Check conditions in order

    score is 75, first condition score >= 90 is false, second score >= 80 is false, third score >= 70 is true.
  2. Step 2: Assign grade and display

    Since third condition is true, grade = 'C' is assigned and displayed.
  3. Final Answer:

    C -> Option A
  4. 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

  1. Step 1: Check if block completeness

    The if-elseif-else block must end with an end keyword in MATLAB to close it properly.
  2. Step 2: Verify other syntax elements

    Semicolons after disp are optional, elseif is correct keyword, and single quotes are correct for strings in MATLAB.
  3. Final Answer:

    Missing end to close the if block -> Option B
  4. 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

  1. 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.
  2. 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.
  3. Final Answer:

    if x > 0 result = 'Positive'; elseif x == 0 result = 'Zero'; else result = 'Negative'; end -> Option C
  4. 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 unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard