Control flow is the order in which individual instructions, statements, or function calls are executed or evaluated in a program.
Click to reveal answer
beginner
Why do we need control flow in a program?
Control flow lets a program make decisions, repeat actions, and choose different paths, so it can solve different problems and react to different inputs.
Click to reveal answer
beginner
How does an if statement affect control flow?
An if statement checks a condition and directs the program to run certain code only if the condition is true, changing the normal top-to-bottom execution.
Click to reveal answer
beginner
What happens when a loop is used in control flow?
A loop repeats a block of code multiple times, directing the program to go back and run the same code again until a condition is met.
Click to reveal answer
beginner
Give an example of control flow directing execution in R.
Using an if-else statement: if (x > 0) { print("Positive") } else { print("Not positive") } directs the program to print different messages based on x's value.
Click to reveal answer
What does control flow control in a program?
AThe speed of the computer
BThe color of the text
CThe order in which code runs
DThe size of the program file
✗ Incorrect
Control flow controls the order in which the program's instructions are executed.
Which R statement directs execution based on a condition?
Alibrary()
Bif statement
Cprint statement
Dfunction definition
✗ Incorrect
The if statement checks a condition and directs execution accordingly.
What does a loop do in control flow?
ARepeats code multiple times
BStops the program
CChanges variable names
DPrints output
✗ Incorrect
Loops repeat a block of code until a condition is met.
Why is control flow important?
AIt allows programs to make decisions and repeat tasks
BIt changes the computer's hardware
CIt formats the screen
DIt deletes files
✗ Incorrect
Control flow lets programs choose paths and repeat actions.
Which of these is NOT a control flow structure?
Awhile loop
Bif statement
Cfor loop
DVariable assignment
✗ Incorrect
Variable assignment sets values but does not direct execution flow.
Explain in your own words why control flow is important in programming.
Think about how a program can do different things based on conditions.
You got /4 concepts.
Describe how an if statement changes the normal flow of a program.
Consider what happens when a condition is true or false.
You got /4 concepts.
Practice
(1/5)
1. What does control flow in R programming mainly do?
easy
A. Creates new variables without declaration
B. Changes the data types of variables automatically
C. Decides which parts of the code run and when
D. Prints output to the console
Solution
Step 1: Understand the role of control flow
Control flow guides the program to run certain parts of code based on conditions or loops.
Step 2: Compare options with control flow purpose
Only Decides which parts of the code run and when matches this role; others describe unrelated actions.
Final Answer:
Decides which parts of the code run and when -> Option C
Quick Check:
Control flow = directs execution [OK]
Hint: Control flow controls code execution order [OK]
Common Mistakes:
Confusing control flow with variable creation
Thinking control flow changes data types
Assuming control flow prints output
2. Which of the following is the correct syntax for an if statement in R?
easy
A. if x > 5 then print("Yes")
B. if (x > 5) { print("Yes") }
C. if x > 5: print("Yes")
D. if (x > 5) print "Yes"
Solution
Step 1: Recall R if statement syntax
In R, the if statement requires parentheses around the condition and braces for the code block.
Step 2: Check each option
if (x > 5) { print("Yes") } uses correct parentheses and braces. Options B, C, and D use incorrect syntax styles.
Final Answer:
if (x > 5) { print("Yes") } -> Option B
Quick Check:
R if syntax = if(condition) { code } [OK]
Hint: Use parentheses and braces for if in R [OK]
Common Mistakes:
Omitting parentheses around condition
Using 'then' keyword (not in R)
Missing braces for code block
3. What will be the output of this R code?
for (i in 1:3) {
if (i == 2) {
print("Skip")
next
}
print(i)
}
medium
A. [1] 1
[1] "Skip"
[1] 3
B. [1] 1
[1] 2
[1] 3
C. [1] 1
[1] 3
D. [1] "Skip"
[1] 3
Solution
Step 1: Trace the for loop iterations
The loop runs i = 1, 2, 3. For i=1, it prints 1. For i=2, it prints "Skip" and uses next to skip printing i. For i=3, it prints 3.
Step 2: Understand the effect of next
next skips the rest of the loop body for i=2, so print(i) is not called then.
Final Answer:
[1] 1
[1] "Skip"
[1] 3 -> Option A
Quick Check:
next skips print(i) at i=2 [OK]
Hint: next skips current loop iteration [OK]
Common Mistakes:
Expecting number 2 to print
Ignoring next statement effect
Confusing print order
4. Identify the error in this R code snippet:
i <- 1
while (i < 4) {
print(i)
i = i + 1
}
medium
A. The while loop condition is incorrect
B. The increment uses '=' instead of '<-'
C. Missing braces around the while loop body
D. No error, code runs correctly
Solution
Step 1: Check while loop syntax
The while loop uses parentheses for condition and braces for the body, which is correct.
Step 2: Check variable increment
In R, '=' can be used for assignment inside code blocks, so 'i = i + 1' works fine.
Final Answer:
No error, code runs correctly -> Option D
Quick Check:
Both '=' and '<-' assign values in R [OK]
Hint: Both '=' and '<-' assign in R [OK]
Common Mistakes:
Thinking '=' is invalid for assignment
Expecting syntax error without braces
Confusing loop condition syntax
5. You want to print numbers from 1 to 5 but skip 3 using control flow in R. Which code correctly does this?
hard
A. for (i in 1:5) { if (i == 3) next; print(i) }
B. for (i in 1:5) { if (i == 3) break; print(i) }
C. for (i in 1:5) { print(i); if (i == 3) next }
D. for (i in 1:5) { if (i == 3) print(i); else next }
Solution
Step 1: Understand the goal
We want to print numbers 1, 2, 4, 5 but skip printing 3.
Step 2: Analyze each option
for (i in 1:5) { if (i == 3) next; print(i) } uses 'next' to skip printing when i is 3, printing all others. for (i in 1:5) { if (i == 3) break; print(i) } stops loop at 3 (break), so 4 and 5 won't print. for (i in 1:5) { print(i); if (i == 3) next } prints i first then next skips the rest of the body (which is empty), so prints all including 3. for (i in 1:5) { if (i == 3) print(i); else next } prints only 3 and skips others, which is wrong.
Step 3: Choose the best control flow usage
Only for (i in 1:5) { if (i == 3) next; print(i) } correctly uses next to skip exactly 3 and continue the loop.
Final Answer:
for (i in 1:5) { if (i == 3) next; print(i) } -> Option A
Quick Check:
next skips iteration cleanly [OK]
Hint: Use next to skip unwanted loop iterations [OK]
Common Mistakes:
Using break stops loop early
Printing only the skipped number
Not using next to skip iteration
Placing print before the next check
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.