Bird
Raised Fist0
NumPydata~20 mins

Scalar operations on arrays in NumPy - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Scalar Operations Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
Output of scalar multiplication on a NumPy array
What is the output of this code?
import numpy as np
arr = np.array([1, 2, 3])
result = arr * 4
print(result)
NumPy
import numpy as np
arr = np.array([1, 2, 3])
result = arr * 4
print(result)
A[4 8 12]
B[1 2 3 4]
C[5 6 7]
DTypeError
Attempts:
2 left
💡 Hint
Multiplying an array by a number multiplies each element by that number.
❓ data_output
intermediate
2:00remaining
Result of adding a scalar to a 2D NumPy array
What is the resulting array after adding 10 to each element?
import numpy as np
arr = np.array([[1, 2], [3, 4]])
result = arr + 10
print(result)
NumPy
import numpy as np
arr = np.array([[1, 2], [3, 4]])
result = arr + 10
print(result)
A
[[1 2]
 [3 4]
 10]
B
[[10 10]
 [10 10]]
C
[[11 12]
 [13 14]]
DValueError
Attempts:
2 left
💡 Hint
Adding a scalar adds it to every element in the array.
🔧 Debug
advanced
2:00remaining
Identify the error in scalar division of a NumPy array
What error does this code produce?
import numpy as np
arr = np.array([10, 20, 30])
result = arr / 0
print(result)
NumPy
import numpy as np
arr = np.array([10, 20, 30])
result = arr / 0
print(result)
ATypeError
BValueError
CZeroDivisionError
DRuntimeWarning: divide by zero encountered in true_divide
Attempts:
2 left
💡 Hint
Dividing by zero in NumPy arrays triggers a warning, not an exception.
🧠 Conceptual
advanced
2:00remaining
Effect of scalar subtraction on a NumPy array
If you subtract 5 from each element of the array np.array([7, 8, 9]), what is the resulting array?
A[12 13 14]
B[2 3 4]
C[7 8 9 5]
DTypeError
Attempts:
2 left
💡 Hint
Subtracting a scalar subtracts it from every element.
🚀 Application
expert
2:00remaining
Calculate the mean after scalar multiplication
Given the array np.array([2, 4, 6, 8]), what is the mean of the array after multiplying each element by 3?
NumPy
import numpy as np
arr = np.array([2, 4, 6, 8])
result = arr * 3
mean_val = result.mean()
print(mean_val)
A15.0
B10.0
C30.0
D20.0
Attempts:
2 left
💡 Hint
Multiply first, then find the average of the new array.

Practice

(1/5)
1. What happens when you add a scalar value to a NumPy array?
arr = np.array([1, 2, 3])
result = arr + 5
easy
A. 5 is added only to the first element
B. The array becomes a scalar value 5
C. 5 is added to each element of the array
D. An error occurs because you cannot add a scalar to an array

Solution

  1. Step 1: Understand scalar addition on arrays

    Adding a scalar to a NumPy array adds that scalar to every element individually.
  2. Step 2: Apply addition to each element

    Each element in [1, 2, 3] gets 5 added, resulting in [6, 7, 8].
  3. Final Answer:

    5 is added to each element of the array -> Option C
  4. Quick Check:

    Scalar + array = element-wise addition [OK]
Hint: Scalar operations apply to every element individually [OK]
Common Mistakes:
  • Thinking scalar adds only to first element
  • Expecting an error when adding scalar
  • Confusing scalar with array addition
2. Which of the following is the correct syntax to multiply every element of a NumPy array arr by 3?
easy
A. arr * 3
B. arr * [3]
C. arr * arr[3]
D. arr * (3,)

Solution

  1. Step 1: Identify scalar multiplication syntax

    Multiplying an array by a scalar uses the * operator with a number, like arr * 3.
  2. Step 2: Check other options

    arr * [3] tries to multiply by a list, arr * arr[3] accesses an element (may cause error if index out of range), arr * (3,) is a tuple, not scalar.
  3. Final Answer:

    arr * 3 -> Option A
  4. Quick Check:

    Scalar multiplication uses * scalar [OK]
Hint: Use * with a number, not list or tuple [OK]
Common Mistakes:
  • Using list or tuple instead of scalar
  • Accessing array element incorrectly
  • Confusing scalar with array
3. What is the output of the following code?
import numpy as np
arr = np.array([2, 4, 6])
result = arr - 1
print(result)
medium
A. [3 5 7]
B. [1 3 5]
C. [2 4 6]
D. Error: unsupported operand

Solution

  1. Step 1: Understand scalar subtraction on array

    Subtracting 1 from each element in [2, 4, 6] results in [1, 3, 5].
  2. Step 2: Confirm output matches expected array

    The print statement outputs the array as [1 3 5] without commas.
  3. Final Answer:

    [1 3 5] -> Option B
  4. Quick Check:

    Array - scalar subtracts from each element [OK]
Hint: Subtract scalar from each element for result [OK]
Common Mistakes:
  • Expecting commas in printed array
  • Adding instead of subtracting
  • Thinking operation causes error
4. The following code throws an error. What is the cause?
import numpy as np
arr = np.array([1, 2, 3])
result = arr + '5'
print(result)
medium
A. Cannot add string scalar to numeric array
B. Array is not defined
C. Missing import statement
D. Syntax error in addition

Solution

  1. Step 1: Identify data types involved in addition

    arr is numeric array, '5' is a string scalar. NumPy cannot add string to numbers.
  2. Step 2: Understand error cause

    Adding string to numeric array causes TypeError because types mismatch.
  3. Final Answer:

    Cannot add string scalar to numeric array -> Option A
  4. Quick Check:

    Scalar type must match array type [OK]
Hint: Scalar must be number, not string, for numeric arrays [OK]
Common Mistakes:
  • Thinking import is missing
  • Confusing syntax error with type error
  • Assuming array is undefined
5. You have a NumPy array arr = np.array([10, 20, 30, 40]). You want to reduce each element by 10% using scalar operations. Which code correctly does this?
hard
A. arr + 0.9
B. arr - 0.1
C. arr / 10
D. arr * 0.9

Solution

  1. Step 1: Understand reducing by 10%

    Reducing by 10% means multiplying by 90% or 0.9.
  2. Step 2: Apply scalar multiplication

    Multiplying arr by 0.9 scales each element down by 10%.
  3. Step 3: Check other options

    Subtracting 0.1 reduces by fixed amount, dividing by 10 reduces by 90%, adding 0.9 increases values.
  4. Final Answer:

    arr * 0.9 -> Option D
  5. Quick Check:

    Multiply by 0.9 to reduce by 10% [OK]
Hint: Multiply by 0.9 to reduce by 10% [OK]
Common Mistakes:
  • Subtracting 0.1 instead of 10%
  • Dividing instead of multiplying
  • Adding instead of reducing
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