Bird
Raised Fist0
PowerShellscripting~20 mins

Variable creation with $ in PowerShell - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
PowerShell Variable 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 code?
Consider the following script:
$name = "Alice"
Write-Output $name
What will be printed when this script runs?
PowerShell
$name = "Alice"
Write-Output $name
AWrite-Output Alice
B$name
CAlice
DError: Variable not defined
Attempts:
2 left
💡 Hint
Variables in PowerShell start with $. The Write-Output command prints the value of the variable.
📝 Syntax
intermediate
2:00remaining
Which option correctly creates a variable with the value 10?
In PowerShell, you want to create a variable named $count with the number 10. Which line is correct?
A$count := 10
B$count = 10
Ccount = $10
Dlet $count = 10
Attempts:
2 left
💡 Hint
PowerShell uses = to assign values to variables starting with $.
🔧 Debug
advanced
2:00remaining
What error does this code produce?
Look at this script:
name = "Bob"
Write-Output $name
What error will occur when running it?
PowerShell
name = "Bob"
Write-Output $name
AError: Variable 'name' is not recognized because it lacks $
BOutputs: Bob
CError: Write-Output is not a recognized command
DOutputs: $name
Attempts:
2 left
💡 Hint
In PowerShell, variables must start with $.
🚀 Application
advanced
2:00remaining
How many variables are created after running this script?
Consider this script:
$a = 5
$b = $a
$c = $b + 10
How many variables exist after running it?
PowerShell
$a = 5
$b = $a
$c = $b + 10
A1
B0
C2
D3
Attempts:
2 left
💡 Hint
Each line creates or assigns a variable starting with $.
🧠 Conceptual
expert
2:00remaining
Which option best describes variable naming rules in PowerShell?
Choose the correct statement about variable names in PowerShell.
AVariable names must start with $ and can include letters, numbers, and underscores; they are case-insensitive.
BVariable names must start with $ and only contain letters; numbers are not allowed.
CVariable names can start with any character and are case-sensitive.
DVariable names must start with a letter or underscore and are case-insensitive.
Attempts:
2 left
💡 Hint
Remember that $ is part of the variable name syntax in PowerShell.

Practice

(1/5)
1. What does the $ symbol do in PowerShell when placed before a word like $name?
easy
A. It prints the word 'name' to the screen.
B. It creates a variable named 'name' to store data.
C. It comments out the line.
D. It runs a command called 'name'.

Solution

  1. Step 1: Understand the role of $ in PowerShell

    The $ symbol is used to declare or access variables in PowerShell.
  2. Step 2: Identify what $name means

    $name means a variable named 'name' that can hold data like text or numbers.
  3. Final Answer:

    It creates a variable named 'name' to store data. -> Option B
  4. Quick Check:

    $ before word = variable creation [OK]
Hint: Remember: $ always starts a variable name [OK]
Common Mistakes:
  • Thinking $ runs commands
  • Confusing $ with comments
  • Assuming $ prints text directly
2. Which of the following is the correct way to create a variable named age with the value 30 in PowerShell?
easy
A. $age = 30
B. set age = 30
C. age = 30
D. var $age = 30

Solution

  1. Step 1: Recall PowerShell variable syntax

    Variables start with $ and assignment uses =.
  2. Step 2: Check each option

    $age = 30 uses $age = 30, which is correct syntax for variable creation and assignment.
  3. Final Answer:

    $age = 30 -> Option A
  4. Quick Check:

    Variable = $name = value [OK]
Hint: Always start variable names with $ in PowerShell [OK]
Common Mistakes:
  • Omitting the $ before variable name
  • Using 'set' keyword which is not PowerShell syntax
  • Adding 'var' keyword which is not used in PowerShell
3. What will be the output of this PowerShell code?
$greeting = "Hello"
$name = "Sam"
Write-Output "$greeting, $name!"
medium
A. Error: Variable not defined
B. $greeting, $name!
C. Hello $name!
D. Hello, Sam!

Solution

  1. Step 1: Understand variable assignment

    $greeting is assigned "Hello" and $name is assigned "Sam".
  2. Step 2: Understand string interpolation in double quotes

    Inside double quotes, variables like $greeting and $name are replaced by their values.
  3. Final Answer:

    Hello, Sam! -> Option D
  4. Quick Check:

    Variables inside "" show their values [OK]
Hint: Use double quotes to insert variables inside strings [OK]
Common Mistakes:
  • Using single quotes which do not expand variables
  • Expecting variable names to print literally
  • Forgetting to assign variables before use
4. Identify the error in this PowerShell script:
$number = 10
$number = $number + 5
Write-Output number
medium
A. Cannot add numbers in PowerShell
B. Variable $number not declared
C. Missing $ before 'number' in Write-Output
D. Write-Output cannot print variables

Solution

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

    The script tries to print 'number' without $, so it prints the word literally.
  2. Step 2: Correct usage of variable in output

    To print the variable value, it should be Write-Output $number.
  3. Final Answer:

    Missing $ before 'number' in Write-Output -> Option C
  4. Quick Check:

    Variables need $ to be recognized [OK]
Hint: Always use $ before variable names when printing [OK]
Common Mistakes:
  • Forgetting $ before variable in output
  • Thinking variables need declaration keyword
  • Assuming Write-Output can't print variables
5. You want to create a variable $fullName by combining two variables $firstName and $lastName with a space in between. Which code correctly does this in PowerShell?
hard
A. $fullName = $firstName + " " + $lastName
B. $fullName = '$firstName $lastName'
C. $fullName = $firstName $lastName
D. $fullName = "$firstName$lastName"

Solution

  1. Step 1: Understand string concatenation in PowerShell

    Use + to join strings and include a space as " ".
  2. Step 2: Analyze each option

    $fullName = $firstName + " " + $lastName correctly adds $firstName, a space, and $lastName to form full name.
  3. Final Answer:

    $fullName = $firstName + " " + $lastName -> Option A
  4. Quick Check:

    Use + and " " to join variables with space [OK]
Hint: Use + and " " to join variables with space [OK]
Common Mistakes:
  • Using single quotes which do not expand variables
  • Missing operator between variables
  • Concatenating without space when needed
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