📖 Scenario: You are organizing a small event and want to create a seating chart. You have 3 tables and 4 seats at each table. You want to assign seat numbers for each table.
🎯 Goal: Build a program that uses nested loops to print seat numbers for each table.
📋 What You'll Learn
Create a variable tables with the value 3
Create a variable seats with the value 4
Use nested for loops with variables table and seat
Print the seat assignment in the format: Table X Seat Y
💡 Why This Matters
🌍 Real World
Nested loops are useful when you need to work with grids, tables, or any data with rows and columns, like seating charts, pixel images, or schedules.
💼 Career
Understanding nested loops is important for programming tasks in data analysis, simulations, and automation where you handle multi-dimensional data.
Progress0 / 4 steps
1
Create variables for tables and seats
Create a variable called tables and set it to 3. Create another variable called seats and set it to 4.
MATLAB
Hint
Use = to assign values to variables in MATLAB.
2
Set up nested loops for tables and seats
Write a for loop with variable table that runs from 1 to tables. Inside it, write another for loop with variable seat that runs from 1 to seats.
MATLAB
Hint
Use for variable = start:end syntax for loops in MATLAB.
3
Print seat assignments inside nested loops
Inside the inner for loop, use fprintf to print the seat assignment in the format: Table X Seat Y\n where X is table and Y is seat.
MATLAB
Hint
Use fprintf with %d placeholders for numbers and \n for new line.
4
Run the program to display all seat assignments
Run the program to print all seat assignments for each table and seat using the nested loops and fprintf.
MATLAB
Hint
Check the console output carefully to see all seat assignments listed.
Practice
(1/5)
1. What does a nested loop in MATLAB do? for i = 1:2 for j = 1:3 disp([i, j]) end end
easy
A. Runs one loop inside another to repeat tasks multiple times
B. Runs two loops one after another without overlap
C. Creates a single loop with combined ranges
D. Stops execution after the first loop finishes
Solution
Step 1: Understand the loop structure
The outer loop runs with i from 1 to 2, and inside it, the inner loop runs with j from 1 to 3.
Step 2: Identify nested loop behavior
For each i, the inner loop runs fully for all j values, repeating tasks multiple times.
Final Answer:
Runs one loop inside another to repeat tasks multiple times -> Option A
Quick Check:
Nested loops repeat inner loop for each outer loop iteration [OK]
Hint: Nested loops repeat inner loop fully for each outer loop step [OK]
Common Mistakes:
Thinking loops run sequentially without nesting
Confusing nested loops with single combined loops
Assuming loops stop early without completing inner loop
2. Which of the following is the correct syntax for a nested for loop in MATLAB?
easy
A. for i = 1:3
disp(i)
for j = 1:2
disp(j)
end
B. for i = 1:3
for j = 1:2
disp(i+j)
end
C. for i = 1:3
for j = 1:2
disp(i+j)
end
D. for i = 1:3
for j = 1:2
disp(i+j)
end
end
Solution
Step 1: Check proper loop nesting and end statements
for i = 1:3
for j = 1:2
disp(i+j)
end
end correctly nests the inner loop inside the outer loop and closes both with end.
Step 2: Identify syntax errors in other options
The other options miss proper indentation or have missing end statements causing syntax errors.
Final Answer:
for i = 1:3
for j = 1:2
disp(i+j)
end
end -> Option D
Quick Check:
Proper nested loops need matching end for each for [OK]
Hint: Each for loop must have its own end statement [OK]
Common Mistakes:
Missing end for inner or outer loop
Incorrect indentation causing confusion
Starting loops without proper nesting
3. What is the output of this MATLAB code?
for i = 1:2
for j = 1:2
fprintf('%d ', i*j)
end
fprintf('\n')
end
medium
A. 1 2 2 4
B. 1 1
2 2
C. 1 2
2 4
D. 2 4
1 2
Solution
Step 1: Calculate inner loop outputs for each outer loop value
When i=1, j=1:2, outputs are 1*1=1 and 1*2=2. When i=2, j=1:2, outputs are 2*1=2 and 2*2=4.
Step 2: Format output with new lines
Each inner loop prints values with space, then outer loop prints newline. So output lines are '1 2 ' and '2 4 '.
Final Answer:
1 2
2 4
-> Option C
Quick Check:
Multiply i and j in nested loops for output [OK]
Hint: Multiply outer and inner loop vars for each output [OK]
Common Mistakes:
Ignoring newline after inner loop
Mixing up i and j values
Printing all values in one line
4. Find the error in this nested loop code:
for i = 1:3
for j = 1:2
disp(i+j)
end
medium
A. Missing end for outer loop
B. Inner loop range is incorrect
C. disp function is used incorrectly
D. Loop variables i and j are not initialized
Solution
Step 1: Check loop endings
The inner loop has an end, but the outer loop does not have its closing end.
Step 2: Identify syntax error cause
Missing the outer loop's end causes MATLAB to throw an error.
Final Answer:
Missing end for outer loop -> Option A
Quick Check:
Each for loop needs its own end [OK]
Hint: Count ends: one per for loop [OK]
Common Mistakes:
Forgetting to close outer loop
Assuming one end closes both loops
Misreading error messages
5. You want to create a 3x3 multiplication table using nested loops in MATLAB. Which code correctly fills matrix M with products of row and column indices?
hard
A. M = zeros(3);
for i = 1:3
for j = 1:3
M(j,i) = i+j;
end
end
B. M = zeros(3);
for i = 1:3
for j = 1:3
M(i,j) = i*j;
end
end
C. M = zeros(3);
for i = 1:3
for j = 1:3
M(i,j) = i+j;
end
end
D. M = zeros(3);
for i = 1:3
for j = 1:3
M(i,j) = i-j;
end
end
Solution
Step 1: Understand the multiplication table goal
The table should store products of row and column indices, so M(i,j) = i*j.
Step 2: Check each option's assignment
M = zeros(3);
for i = 1:3
for j = 1:3
M(i,j) = i*j;
end
end correctly assigns M(i,j) = i*j. The other options assign sums or differences, not products.
Final Answer:
M = zeros(3);
for i = 1:3
for j = 1:3
M(i,j) = i*j;
end
end -> Option B
Quick Check:
Multiplication table uses product of indices [OK]
Hint: Assign M(i,j) = i*j for multiplication table [OK]
Common Mistakes:
Using addition or subtraction instead of multiplication
Swapping indices in assignment
Not initializing matrix before loops
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.