Bird
Raised Fist0
PowerShellscripting~20 mins

Range operator (..) in PowerShell - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
PowerShell Range Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
💻 Command Output
intermediate
2:00remaining
What is the output of this PowerShell range operator?
Consider the following PowerShell command:
$result = 5..8
$result

What will be the output?
PowerShell
$result = 5..8
$result
A5 6 7 8
B5..8
C8 7 6 5
DError: Invalid range operator usage
Attempts:
2 left
💡 Hint
The range operator creates a sequence of numbers from the first to the second number.
💻 Command Output
intermediate
2:00remaining
What does this PowerShell code output?
Look at this code snippet:
$numbers = 10..7
$numbers

What will be the output?
PowerShell
$numbers = 10..7
$numbers
A10 9 8 7
B7 8 9 10
C10 7
DEmpty array
Attempts:
2 left
💡 Hint
The range operator counts down if the first number is greater than the second.
📝 Syntax
advanced
2:00remaining
Which option correctly uses the range operator to create an array from 3 to 6?
Select the PowerShell code that correctly creates an array containing numbers 3, 4, 5, and 6.
A$arr = 3..6..1
B$arr = 3..6
C$arr = 3-6
D$arr = 3...6
Attempts:
2 left
💡 Hint
The range operator uses two dots between numbers.
🚀 Application
advanced
2:00remaining
How many elements are in the array created by this range?
Given this PowerShell code:
$array = 15..10

How many elements does $array contain?
A4
B5
C0
D6
Attempts:
2 left
💡 Hint
Count all numbers from 15 down to 10 inclusive.
🧠 Conceptual
expert
2:00remaining
What error does this PowerShell code produce?
Analyze this code:
$result = 5..'8'

What happens when you run it?
AError: Cannot convert value '8' to type 'System.Int32'
BOutputs: 5 '8'
COutputs: 5 6 7 8
DEmpty array
Attempts:
2 left
💡 Hint
The range operator requires both ends to be integers.

Practice

(1/5)
1. What does the PowerShell range operator 1..5 produce?
easy
A. An empty list
B. A list of numbers from 5 to 1 inclusive
C. A syntax error
D. A list of numbers from 1 to 5 inclusive

Solution

  1. Step 1: Understand the range operator syntax

    The range operator .. creates a sequence of numbers from the first number to the second number.
  2. Step 2: Apply the operator to 1..5

    It creates a list starting at 1 and ending at 5, including both ends.
  3. Final Answer:

    A list of numbers from 1 to 5 inclusive -> Option D
  4. Quick Check:

    Range 1..5 = 1,2,3,4,5 [OK]
Hint: Range operator lists numbers from start to end inclusive [OK]
Common Mistakes:
  • Thinking it counts down by default
  • Expecting exclusive end value
  • Confusing syntax with other operators
2. Which of the following is the correct syntax to create a descending range from 5 to 1 in PowerShell?
easy
A. 5-1
B. 1..5
C. 5..1
D. range(5,1)

Solution

  1. Step 1: Identify how to create descending ranges

    PowerShell range operator supports descending ranges by placing the higher number first.
  2. Step 2: Check the options

    5..1 uses 5..1 which creates a descending list from 5 down to 1.
  3. Final Answer:

    5..1 -> Option C
  4. Quick Check:

    Descending range = 5..1 [OK]
Hint: Put larger number first for descending range [OK]
Common Mistakes:
  • Using 1..5 for descending range
  • Using invalid syntax like 5-1
  • Using non-PowerShell functions like range()
3. What is the output of this PowerShell command?
1..3 | ForEach-Object { $_ * 2 }
medium
A. 2 4 6
B. 1 2 3
C. 3 6 9
D. Error: Invalid operation

Solution

  1. Step 1: Understand the range and pipeline

    The range operator 1..3 produces 1, 2, 3 which are piped one by one.
  2. Step 2: Multiply each number by 2

    Each number is multiplied by 2: 1*2=2, 2*2=4, 3*2=6.
  3. Final Answer:

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

    1..3 * 2 = 2 4 6 [OK]
Hint: Range pipes each number; multiply inside loop [OK]
Common Mistakes:
  • Expecting original numbers without multiplication
  • Confusing multiplication with addition
  • Thinking it produces a syntax error
4. You wrote this code but it throws an error:
5..1..1

What is the problem?
medium
A. Range operator does not support three dots
B. Range operator requires spaces between dots
C. Range operator only works with ascending numbers
D. Range operator needs parentheses around numbers

Solution

  1. Step 1: Analyze the syntax used

    The code uses three dots .. twice in a row, making ..1..1 which is invalid.
  2. Step 2: Understand range operator limitations

    The range operator only supports two dots .. between two numbers, not three dots or step values.
  3. Final Answer:

    Range operator does not support three dots -> Option A
  4. Quick Check:

    Only two dots allowed in range operator [OK]
Hint: Range operator uses exactly two dots (..), no more [OK]
Common Mistakes:
  • Trying to add step value with extra dots
  • Adding spaces between dots
  • Assuming parentheses fix syntax
5. You want to create a list of even numbers from 2 to 10 using the range operator and filtering. Which script correctly does this?
hard
A. 2..10 | ForEach-Object { $_ * 2 }
B. 2..10 | Where-Object { $_ % 2 -eq 0 }
C. 1..5 | Where-Object { $_ % 2 -eq 0 }
D. 2..10..2

Solution

  1. Step 1: Understand the range and filtering

    The range operator 2..10 creates numbers 2 to 10. Filtering with Where-Object { $_ % 2 -eq 0 } keeps only even numbers.
  2. Step 2: Check each option

    2..10 | Where-Object { $_ % 2 -eq 0 } correctly filters evens from 2 to 10. 2..10 | ForEach-Object { $_ * 2 } doubles numbers 2 to 10 (wrong). 1..5 | Where-Object { $_ % 2 -eq 0 } filters evens from 1 to 5 (wrong range). 2..10..2 uses invalid syntax (range operator does not support step).
  3. Final Answer:

    2..10 | Where-Object { $_ % 2 -eq 0 } -> Option B
  4. Quick Check:

    Filter evens from range with Where-Object [OK]
Hint: Use Where-Object to filter even numbers after range [OK]
Common Mistakes:
  • Trying to add step in range operator
  • Using wrong range limits
  • Multiplying instead of filtering
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