Bird
Raised Fist0
PowerShellscripting~5 mins

For loop in PowerShell - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a for loop in PowerShell?
A for loop is a control structure that repeats a block of code a specific number of times. It uses a counter to track iterations.
Click to reveal answer
beginner
What are the three parts of a PowerShell for loop header?
1. Initialization (sets the counter)
2. Condition (checks if the loop should continue)
3. Increment/Decrement (updates the counter each time)
Click to reveal answer
beginner
How do you write a for loop in PowerShell that counts from 1 to 5?
for ($i = 1; $i -le 5; $i++) {
Write-Output $i
}
Click to reveal answer
beginner
What happens if the condition in a for loop is never true?
The loop body does not run at all because the condition is checked before each iteration.
Click to reveal answer
intermediate
How can you exit a for loop early in PowerShell?
Use the break statement inside the loop to stop it immediately.
Click to reveal answer
Which part of the for loop controls how many times the loop runs?
AThe loop body
BThe initialization
CThe increment
DThe condition
What does this for loop do? for ($i=0; $i -lt 3; $i++) { Write-Output $i }
APrints nothing
BPrints 1, 2, 3
CPrints 0, 1, 2
DPrints 0, 1, 2, 3
What keyword stops a for loop immediately in PowerShell?
Abreak
Bstop
Cexit
Dcontinue
If the initialization is missing in a for loop, what happens?
AIt depends on the condition and increment
BThe loop will not run
CThe loop runs infinitely
DPowerShell throws an error
Which symbol is used for incrementing the counter by 1 in PowerShell for loops?
A$i--
B$i++
C$i+=2
D$i*=
Explain how a for loop works in PowerShell and write a simple example that prints numbers from 1 to 3.
Think about setting a counter, checking it, and increasing it each time.
You got /5 concepts.
    Describe how you can stop a for loop before it finishes all iterations in PowerShell.
    What keyword lets you jump out of the loop?
    You got /3 concepts.

      Practice

      (1/5)
      1.

      What does a for loop in PowerShell do?

      easy
      A. Defines a function
      B. Runs code only once
      C. Stops the script immediately
      D. Repeats a block of code a set number of times

      Solution

      1. Step 1: Understand the purpose of a for loop

        A for loop is designed to repeat code multiple times based on a condition.
      2. Step 2: Compare options with the definition

        Only Repeats a block of code a set number of times correctly describes repeating code a set number of times.
      3. Final Answer:

        Repeats a block of code a set number of times -> Option D
      4. Quick Check:

        For loop = repeat code [OK]
      Hint: For loops repeat code multiple times [OK]
      Common Mistakes:
      • Thinking for loop runs only once
      • Confusing for loop with function definition
      • Believing for loop stops script
      2.

      Which of the following is the correct syntax for a for loop in PowerShell?

      for (init; condition; increment) { code }
      easy
      A. for ($i=0; $i -lt 5; $i++) { Write-Output $i }
      B. for $i in 0..5 { Write-Output $i }
      C. foreach ($i=0; $i -lt 5; $i++) { Write-Output $i }
      D. while ($i=0; $i -lt 5; $i++) { Write-Output $i }

      Solution

      1. Step 1: Identify correct for loop syntax

        PowerShell for loops use parentheses with init; condition; increment separated by semicolons.
      2. Step 2: Check each option

        for ($i=0; $i -lt 5; $i++) { Write-Output $i } matches correct syntax. A uses while keyword. B has invalid 'for $i in' syntax. C uses foreach keyword. [OK]
      3. Final Answer:

        for ($i=0; $i -lt 5; $i++) { Write-Output $i } -> Option A
      4. Quick Check:

        Correct for loop syntax = for ($i=0; $i -lt 5; $i++) { Write-Output $i } [OK]
      Hint: For loop uses semicolons inside parentheses [OK]
      Common Mistakes:
      • Using foreach instead of for
      • Using spaces instead of semicolons
      • Confusing while loop syntax
      3.

      What will be the output of this PowerShell code?

      for ($i=1; $i -le 3; $i++) { Write-Output ($i * 2) }
      medium
      A. 0 2 4
      B. 1 2 3
      C. 2 4 6
      D. 3 6 9

      Solution

      1. Step 1: Understand loop iterations

        The loop runs with $i values 1, 2, and 3 because condition is $i -le 3.
      2. Step 2: Calculate output for each iteration

        Output is $i * 2: 1*2=2, 2*2=4, 3*2=6.
      3. Final Answer:

        2 4 6 -> Option C
      4. Quick Check:

        Multiply each i by 2 = 2 4 6 [OK]
      Hint: Multiply loop variable by 2 each iteration [OK]
      Common Mistakes:
      • Confusing loop range
      • Multiplying after loop ends
      • Printing loop variable instead of calculation
      4.

      Identify the error in this PowerShell for loop:

      for (; $i < 5; $i++) { Write-Output $i }
      medium
      A. The increment operator '++' is invalid in PowerShell
      B. The loop variable $i is not initialized
      C. The condition uses '<' instead of '-lt'
      D. The loop body is missing curly braces

      Solution

      1. Step 1: Check initialization syntax in for loop

        The initialization part is empty; $i needs to be initialized (e.g., $i=0).
      2. Step 2: Verify other parts

        Increment '++' is valid, condition '<' works for numbers, braces are present.
      3. Final Answer:

        The loop variable $i is not initialized -> Option B
      4. Quick Check:

        Always initialize $i in for loop [OK]
      Hint: Initialize loop variable in for loop [OK]
      Common Mistakes:
      • Forgetting to initialize loop variable
      • Thinking '++' is invalid
      • Using C-style operators like '<' in PowerShell
      5.

      You want to print only even numbers from 2 to 10 using a for loop in PowerShell. Which code snippet achieves this?

      hard
      A. for ($i=2; $i -le 10; $i+=2) { Write-Output $i }
      B. for ($i=1; $i -lt 10; $i++) { if ($i % 2 -eq 0) { Write-Output $i } }
      C. for ($i=2; $i -lt 10; $i++) { Write-Output $i }
      D. for ($i=0; $i -le 10; $i+=3) { Write-Output $i }

      Solution

      1. Step 1: Understand the goal

        We want to print even numbers from 2 to 10 inclusive.
      2. Step 2: Analyze each option

        for ($i=1; $i -lt 10; $i++) { if ($i % 2 -eq 0) { Write-Output $i } } goes to i<10 so prints 2,4,6,8 (misses 10). for ($i=2; $i -le 10; $i+=2) { Write-Output $i } starts at 2, increments by 2 up to 10: 2,4,6,8,10. for ($i=2; $i -lt 10; $i++) { Write-Output $i } prints 2-9 all numbers. for ($i=0; $i -le 10; $i+=3) { Write-Output $i } wrong start/step.
      3. Final Answer:

        for ($i=2; $i -le 10; $i+=2) { Write-Output $i } -> Option A
      4. Quick Check:

        Increment by 2 from 2 to 10 = even numbers [OK]
      Hint: Increment by 2 starting at 2 for even numbers [OK]
      Common Mistakes:
      • Using wrong increment step
      • Starting from 1 instead of 2
      • Not filtering for even numbers
      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