A while loop in R repeats a block of code as long as a given condition is TRUE. It checks the condition before each repetition.
Click to reveal answer
beginner
How do you write a basic while loop in R?
Use the syntax:
while(condition) {
# code to repeat
}
The code inside runs while the condition is TRUE.
Click to reveal answer
beginner
What happens if the condition in a while loop is FALSE at the start?
The code inside the while loop does not run at all because the condition is checked before the first iteration.
Click to reveal answer
intermediate
How can you avoid an infinite loop with a while loop?
Make sure the condition will eventually become FALSE by changing variables inside the loop. Otherwise, the loop runs forever.
Click to reveal answer
beginner
Example: What does this R code print?
i <- 1
while(i <= 3) {
print(i)
i <- i + 1
}
It prints: 1 2 3 Because i starts at 1 and increases by 1 each time until it is greater than 3.
Click to reveal answer
What does a while loop do in R?
ARepeats code a fixed number of times
BRepeats code while a condition is TRUE
CRuns code once regardless of condition
DStops the program immediately
✗ Incorrect
A while loop repeats the code block as long as the condition remains TRUE.
When is the condition in a while loop checked?
AOnly once at the start
BAfter each repetition
CBefore each repetition
DNever
✗ Incorrect
The condition is checked before each time the loop runs.
What happens if the while loop condition is FALSE at the start?
AThe loop code does not run
BThe loop runs once
CThe loop runs infinitely
DThe program crashes
✗ Incorrect
If the condition is FALSE initially, the loop body is skipped.
How can you prevent an infinite while loop?
AUse a for loop instead
BDo nothing; infinite loops are normal
CAdd a break statement outside the loop
DChange variables inside the loop to eventually make the condition FALSE
✗ Incorrect
You must update variables so the condition becomes FALSE to stop the loop.
What will this code print? i <- 2 while(i < 5) { print(i) i <- i + 2 }
A2 and 4
B2, 3, 4
C2, 4, 6
DNothing
✗ Incorrect
It prints 2 and 4 because i increases by 2 each time and stops before 5.
Explain how a while loop works in R and give a simple example.
Think about how you repeat a task until something changes.
You got /3 concepts.
What is an infinite loop and how can you avoid it when using a while loop?
Imagine a clock that never stops ticking.
You got /4 concepts.
Practice
(1/5)
1. What does a while loop do in R?
easy
A. Executes code only once
B. Repeats code a fixed number of times
C. Repeats code as long as a condition is TRUE
D. Stops the program immediately
Solution
Step 1: Understand the purpose of a while loop
A while loop runs repeatedly while its condition remains TRUE.
Step 2: Compare options
Only Repeats code as long as a condition is TRUE correctly describes this behavior; others describe different concepts.
Final Answer:
Repeats code as long as a condition is TRUE -> Option C
Quick Check:
while loop = repeat while TRUE [OK]
Hint: While loops run while condition is TRUE, not fixed times [OK]
Common Mistakes:
Confusing while loop with for loop
Thinking it runs only once
Believing it stops the program
2. Which of the following is the correct syntax for a while loop in R?
easy
A. while (i <= 5) { print(i); i <- i + 1 }
B. while i <= 5 { print(i); i <- i + 1 }
C. while i <= 5: print(i); i <- i + 1
D. while (i <= 5) print(i) i <- i + 1
Solution
Step 1: Check R while loop syntax
R requires parentheses around the condition and braces for the loop body.
Step 2: Validate each option
Only while (i <= 5) { print(i); i <- i + 1 } uses correct parentheses and braces syntax.
Final Answer:
while (i <= 5) { print(i); i <- i + 1 } -> Option A
Quick Check:
Correct syntax uses parentheses and braces [OK]
Hint: Use parentheses for condition and braces for loop body [OK]
Common Mistakes:
Omitting parentheses around condition
Missing braces for multiple statements
Using colon or wrong punctuation
3. What is the output of this R code?
i <- 1
while (i <= 3) {
print(i)
i <- i + 1
}
medium
A. Error: object 'i' not found
B. [1] 1 [1] 2
C. [1] 3
D. [1] 1 [1] 2 [1] 3
Solution
Step 1: Trace the loop iterations
i starts at 1, loop runs while i <= 3, printing i each time and increasing i by 1.
Step 2: List printed values
Values printed are 1, then 2, then 3 before loop stops.
Final Answer:
[1] 1 [1] 2 [1] 3 -> Option D
Quick Check:
Prints 1, 2, 3 in order [OK]
Hint: Increment loop variable inside while to avoid infinite loop [OK]
Common Mistakes:
Forgetting to increment i causing infinite loop
Expecting only last value printed
Confusing output format
4. Identify the error in this R while loop code:
i <- 1
while (i < 5) {
print(i)
}
medium
A. Missing increment of i inside the loop
B. Incorrect condition syntax
C. print() function is invalid
D. Variable i is not initialized
Solution
Step 1: Analyze loop body
The loop prints i but never changes i, so i stays 1 forever.
Step 2: Understand consequence
Without increment, the condition i < 5 is always TRUE, causing infinite loop.
Final Answer:
Missing increment of i inside the loop -> Option A
Quick Check:
Update loop variable to stop loop [OK]
Hint: Always update loop variable inside while to avoid infinite loop [OK]
Common Mistakes:
Forgetting to increment loop variable
Assuming print causes increment
Misreading condition syntax
5. How can you use a while loop in R to calculate the factorial of 5? Choose the correct code snippet.
hard
A. n <- 5
fact <- 0
i <- 1
while (i < n) {
fact <- fact * i
i <- i + 1
}
fact
B. n <- 5
fact <- 1
i <- 1
while (i <= n) {
fact <- fact * i
i <- i + 1
}
fact
C. n <- 5
fact <- 1
while (n > 0) {
fact <- fact + n
n <- n - 1
}
fact
D. n <- 5
fact <- 1
while (fact <= n) {
fact <- fact * n
n <- n - 1
}
fact
Solution
Step 1: Understand factorial calculation
Factorial multiplies numbers from 1 to n, so loop must multiply fact by i from 1 to n.
Step 2: Check each code snippet
n <- 5
fact <- 1
i <- 1
while (i <= n) {
fact <- fact * i
i <- i + 1
}
fact correctly initializes fact=1, loops i from 1 to n, multiplying fact by i each time.
Final Answer:
n <- 5
fact <- 1
i <- 1
while (i <= n) {
fact <- fact * i
i <- i + 1
}
fact -> Option B
Quick Check:
Multiply 1 to 5 sequentially for factorial [OK]
Hint: Multiply from 1 to n inside while loop for factorial [OK]
Common Mistakes:
Using addition instead of multiplication
Incorrect loop condition
Starting fact at 0 causing zero result
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.