Bird
Raised Fist0
Unityframework~10 mins

Debug.Log for debugging in Unity - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to print "Hello World" in the Unity console.

Unity
Debug.[1]("Hello World");
Drag options to blanks, or click blank then click option'
ALog
BShow
CWrite
DPrint
Attempts:
3 left
💡 Hint
Common Mistakes
Using Debug.Print instead of Debug.Log
Trying to use Console.WriteLine which is not used in Unity
2fill in blank
medium

Complete the code to print the value of the variable score using Debug.Log.

Unity
int score = 10;
Debug.[1]($"Score is {score}");
Drag options to blanks, or click blank then click option'
AWrite
BPrint
CLog
DShow
Attempts:
3 left
💡 Hint
Common Mistakes
Using Debug.Print or Debug.Write which do not exist in Unity
Forgetting the $ before the string for interpolation
3fill in blank
hard

Fix the error in the code to correctly print the player's name.

Unity
string playerName = "Alex";
Debug.[1](playerName);
Drag options to blanks, or click blank then click option'
APrintln
BLog
CWriteLine
DShow
Attempts:
3 left
💡 Hint
Common Mistakes
Using Println or WriteLine which are not Unity methods
Trying to use Debug.Show which does not exist
4fill in blank
hard

Fill both blanks to print the player's score only if it is greater than 50.

Unity
int score = 75;
if (score [1] 50)
{
    Debug.[2]($"High score: {score}");
}
Drag options to blanks, or click blank then click option'
A>
B<
CLog
DPrint
Attempts:
3 left
💡 Hint
Common Mistakes
Using < instead of > in the condition
Using Debug.Print which is not a Unity method
5fill in blank
hard

Fill all three blanks to create a dictionary of player names and scores, then print only those with scores above 80.

Unity
var playerScores = new Dictionary<string, int> {
    {"Alice", 90},
    {"Bob", 70},
    {"Charlie", 85}
};

foreach (var [1] in playerScores)
{
    if ([2].Value [3] 80)
    {
        Debug.Log($"[2].Key scored [2].Value");
    }
}
Drag options to blanks, or click blank then click option'
Aplayer
C>
Dscore
Attempts:
3 left
💡 Hint
Common Mistakes
Using different variable names inconsistently
Using < or = instead of > in the condition

Practice

(1/5)
1. What is the main purpose of Debug.Log in Unity?
easy
A. To create new game objects
B. To save game data to a file
C. To change the color of objects
D. To print messages to the Console for debugging

Solution

  1. Step 1: Understand Debug.Log function

    Debug.Log is used to print messages to the Unity Console, helping developers see what is happening in the game.
  2. Step 2: Identify the purpose from options

    Only To print messages to the Console for debugging describes printing messages for debugging, which matches Debug.Log's purpose.
  3. Final Answer:

    To print messages to the Console for debugging -> Option D
  4. Quick Check:

    Debug.Log prints messages = B [OK]
Hint: Debug.Log shows messages in Console to check game status [OK]
Common Mistakes:
  • Thinking Debug.Log creates or changes objects
  • Confusing Debug.Log with saving or loading data
  • Assuming Debug.Log changes game visuals
2. Which of the following is the correct way to print the message "Hello World" using Debug.Log in Unity?
easy
A. Debug.Log(Hello World);
B. Debug.Log("Hello World");
C. Debug.Log['Hello World'];
D. Debug.Log{Hello World};

Solution

  1. Step 1: Check correct syntax for Debug.Log

    Debug.Log requires a string inside parentheses and double quotes for text, like Debug.Log("text").
  2. Step 2: Identify correct option

    Debug.Log("Hello World"); uses parentheses and double quotes correctly. Other options have wrong syntax like missing quotes or wrong brackets.
  3. Final Answer:

    Debug.Log("Hello World"); -> Option B
  4. Quick Check:

    Correct syntax uses parentheses and quotes = D [OK]
Hint: Use parentheses and double quotes for strings in Debug.Log [OK]
Common Mistakes:
  • Forgetting quotes around text
  • Using square or curly brackets instead of parentheses
  • Missing semicolon at the end
3. What will be printed in the Console when this code runs?
int score = 10;
Debug.Log("Score: " + score);
medium
A. Score: 10
B. Score: score
C. 10
D. Score + score

Solution

  1. Step 1: Understand string concatenation in Debug.Log

    The code combines the string "Score: " with the integer variable score using +, which converts the number to text.
  2. Step 2: Determine the output message

    The output will be the text "Score: " followed by the value 10, so the Console shows "Score: 10".
  3. Final Answer:

    Score: 10 -> Option A
  4. Quick Check:

    String + int converts int to string = A [OK]
Hint: Adding string + number prints combined text in Console [OK]
Common Mistakes:
  • Expecting variable name printed instead of value
  • Forgetting + operator for concatenation
  • Confusing output with just number or variable name
4. What is wrong with this code snippet?
int score = 10;
Debug.Log("Player score is: " + score)
medium
A. Debug.Log cannot print variables
B. score variable is not declared
C. Missing semicolon at the end
D. Quotes are missing around the string

Solution

  1. Step 1: Check syntax of Debug.Log statement

    The statement is missing a semicolon at the end, which is required in C#.
  2. Step 2: Verify other parts

    The string has quotes, score variable is declared above, and Debug.Log can print variables. The syntax error is the missing semicolon.
  3. Final Answer:

    Missing semicolon at the end -> Option C
  4. Quick Check:

    Statements need semicolon ; at end = A [OK]
Hint: Always end Debug.Log lines with a semicolon ; [OK]
Common Mistakes:
  • Ignoring missing semicolon errors
  • Assuming Debug.Log can't print variables
  • Confusing string quotes with missing quotes
5. You want to debug a player's health value inside the Update() method. Which code correctly prints the health variable every frame?
hard
A. void Update() { Debug.Log(health); }
B. void Update() { Debug.Log("health"); }
C. void Update() { Debug.Log(health + health); }
D. void Update() { Debug.Log(health); Debug.Log(); }

Solution

  1. Step 1: Understand how to print variable value

    To print the value of health, pass it directly to Debug.Log. void Update() { Debug.Log(health); } does this correctly.
  2. Step 2: Check other options for correctness

    void Update() { Debug.Log("health"); } prints the word "health" literally, not the variable value. void Update() { Debug.Log(health + health); } incorrectly adds health to itself (doubling the numeric value). void Update() { Debug.Log(health); Debug.Log(); } calls Debug.Log() without arguments, causing error.
  3. Final Answer:

    void Update() { Debug.Log(health); } -> Option A
  4. Quick Check:

    Pass variable directly to Debug.Log to print value = C [OK]
Hint: Pass variable directly to Debug.Log to see its value [OK]
Common Mistakes:
  • Printing variable name as string instead of value
  • Calling Debug.Log without arguments
  • Unnecessary string concatenation
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