Bird
Raised Fist0
PowerShellscripting~20 mins

Why variables store data in PowerShell - Challenge Your Understanding

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Variable Mastery Badge
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 script?
Look at the script below. What will be printed when it runs?
PowerShell
$name = "Alice"
Write-Output $name
AAlice
B$name
CError: Variable not defined
DWrite-Output $name
Attempts:
2 left
💡 Hint
Variables hold values. When you output a variable, you see its stored value.
🧠 Conceptual
intermediate
2:00remaining
Why do variables store data in scripts?
Choose the best reason why variables are used to store data in scripts.
ATo keep information that can be used later in the script
BTo make the script run faster by skipping commands
CTo display messages on the screen automatically
DTo prevent the script from running more than once
Attempts:
2 left
💡 Hint
Think about how you remember things to use later.
🔧 Debug
advanced
2:00remaining
What does this script output?
This script tries to print a variable before assigning it. What will it show?
PowerShell
Write-Output $username
$username = "Bob"
ABob
BEmpty output
CSyntaxError: Unexpected token
DError: Variable $username is not defined
Attempts:
2 left
💡 Hint
Undefined variables output nothing in PowerShell.
🚀 Application
advanced
2:00remaining
What is the value of $count after running this script?
Look at the script. What number will $count hold at the end?
PowerShell
$count = 0
$count = $count + 1
$count = $count + 2
A0
B1
CError: Cannot add to variable
D3
Attempts:
2 left
💡 Hint
Add each number step by step to the starting value.
📝 Syntax
expert
2:00remaining
Which option correctly stores and outputs a string variable?
Choose the script that correctly stores the word "Hello" in a variable and prints it.
A
$greeting = Hello
Write-Output $greeting
B
$greeting = 'Hello'
Write-Output $greeting
C
$greeting = "Hello"
Write-Output $greeting
D
$greeting = "Hello"
Write-Output greeting
Attempts:
2 left
💡 Hint
Strings must be inside quotes in PowerShell.

Practice

(1/5)
1. Why do we use variables in PowerShell scripts?
easy
A. To change the color of the text output
B. To make the script run faster
C. To delete files automatically
D. To store data so the script can use it later

Solution

  1. Step 1: Understand the purpose of variables

    Variables hold information so scripts can remember and reuse it.
  2. Step 2: Compare options with variable purpose

    Only storing data for later use matches the role of variables.
  3. Final Answer:

    To store data so the script can use it later -> Option D
  4. Quick Check:

    Variables store data = C [OK]
Hint: Variables remember data for scripts to reuse [OK]
Common Mistakes:
  • Thinking variables speed up scripts
  • Confusing variables with text formatting
  • Assuming variables delete files
2. Which is the correct way to create a variable named count with value 5 in PowerShell?
easy
A. $count = 5
B. count = 5
C. var count = 5
D. set count = 5

Solution

  1. Step 1: Recall PowerShell variable syntax

    Variables start with a $ sign, e.g., $count.
  2. Step 2: Match syntax to options

    Only $count = 5 uses $count = 5, which is correct in PowerShell.
  3. Final Answer:

    $count = 5 -> Option A
  4. Quick Check:

    Variables start with $ = B [OK]
Hint: Variables always start with $ in PowerShell [OK]
Common Mistakes:
  • Omitting the $ sign before variable name
  • Using other language syntax like var or set
  • Assigning without an equals sign
3. What will be the output of this PowerShell script?
$name = "Anna"
Write-Output $name
medium
A. $name
B. Write-Output $name
C. Anna
D. Error: Variable not defined

Solution

  1. Step 1: Understand variable assignment

    $name is assigned the string "Anna".
  2. Step 2: Understand Write-Output behavior

    Write-Output prints the value stored in $name, which is "Anna".
  3. Final Answer:

    Anna -> Option C
  4. Quick Check:

    Variable value printed = A [OK]
Hint: Write-Output prints variable's stored value [OK]
Common Mistakes:
  • Expecting variable name printed instead of value
  • Confusing output with command text
  • Thinking it causes an error
4. Identify the error in this PowerShell script:
$age = 30
Write-Output age
medium
A. Variable $age cannot store numbers
B. Missing $ before variable name in Write-Output
C. Write-Output cannot print variables
D. Assignment operator = is incorrect

Solution

  1. Step 1: Check variable usage in Write-Output

    Variables must have $ prefix when used, so "age" is incorrect.
  2. Step 2: Verify other parts

    $age = 30 is valid; Write-Output can print variables; = is correct.
  3. Final Answer:

    Missing $ before variable name in Write-Output -> Option B
  4. Quick Check:

    Variables need $ prefix = A [OK]
Hint: Always use $ before variable names when referencing [OK]
Common Mistakes:
  • Forgetting $ before variable in commands
  • Thinking variables can't hold numbers
  • Assuming Write-Output can't print variables
5. You want to store a user's name and age in variables and then print a message like "John is 25 years old." Which script correctly uses variables to do this?
hard
A. $userName = "John" $userAge = 25 Write-Output "$userName is $userAge years old."
B. userName = "John" userAge = 25 Write-Output "userName is userAge years old."
C. $userName = John $userAge = "25" Write-Output "$userName is $userAge years old."
D. $userName = "John" $userAge = 25 Write-Output '$userName is $userAge years old.'

Solution

  1. Step 1: Check variable assignment correctness

    $userName = "John" $userAge = 25 Write-Output "$userName is $userAge years old." assigns strings and numbers correctly with $ and quotes.
  2. Step 2: Check output formatting

    $userName = "John" $userAge = 25 Write-Output "$userName is $userAge years old." uses double quotes allowing variable values to appear in output.
  3. Step 3: Identify errors in other options

    One option uses single quotes which do not expand variables; another misses $ signs and prints variable names literally; another misses quotes around John causing a syntax error.
  4. Final Answer:

    $userName = "John" $userAge = 25 Write-Output "$userName is $userAge years old." -> Option A
  5. Quick Check:

    Use $ and double quotes for variable output = D [OK]
Hint: Use $ and double quotes to show variable values in strings [OK]
Common Mistakes:
  • Forgetting $ before variable names
  • Using single quotes which don't expand variables
  • Not quoting string values properly
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