Bird
Raised Fist0
Swiftprogramming~20 mins

Int, Double, Float number types in Swift - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Swift Number Types Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate
2:00remaining
What is the output of this Swift code with mixed number types?
Consider the following Swift code snippet. What will be printed when it runs?
Swift
let a: Int = 5
let b: Double = 3.2
let c = Double(a) + b
print(c)
A8.2
B8
CType error at compile time
D5.32
Attempts:
2 left
💡 Hint
Remember that you need to convert Int to Double before adding.
❓ Predict Output
intermediate
2:00remaining
What is the value of variable 'result' after this Swift code runs?
Look at this Swift code. What is the value of 'result'?
Swift
let x: Float = 2.5
let y: Double = 4.5
let result = Double(x) * y
print(result)
AType mismatch error
B11.25f
C7.0
D11.25
Attempts:
2 left
💡 Hint
Float must be converted to Double before multiplication.
❓ Predict Output
advanced
2:00remaining
What error does this Swift code produce?
Examine this Swift code snippet. What error will it cause when compiled?
Swift
let a: Int = 10
let b: Float = 3.5
let c = a + b
print(c)
APrints 13.5
BPrints 13
CType error: Cannot add Int and Float directly
DRuntime error: nil value
Attempts:
2 left
💡 Hint
Swift does not allow adding Int and Float without conversion.
🧠 Conceptual
advanced
2:00remaining
Which Swift type is best for precise decimal calculations?
You want to store currency values in Swift with exact decimal precision. Which type should you use?
AFloat
BDecimal
CInt
DDouble
Attempts:
2 left
💡 Hint
Floating point types can cause rounding errors.
❓ Predict Output
expert
2:00remaining
How many items are in the resulting array after this Swift code runs?
Analyze this Swift code and determine the number of elements in 'results'.
Swift
let numbers: [Double] = [1.0, 2.5, 3.7, 4.0]
let results = numbers.compactMap { num -> Int? in
    let intValue = Int(num)
    return num == Double(intValue) ? intValue : nil
}
print(results.count)
A2
B3
C1
D4
Attempts:
2 left
💡 Hint
compactMap filters out nil values after checking if Double equals Int conversion.

Practice

(1/5)
1.

Which Swift type is best to store the number 42 without any decimal part?

easy
A. String
B. Double
C. Float
D. Int

Solution

  1. Step 1: Understand the number type

    The number 42 is a whole number without decimals.
  2. Step 2: Match with Swift types

    Int stores whole numbers, while Double and Float store decimal numbers.
  3. Final Answer:

    Int -> Option D
  4. Quick Check:

    Whole number = Int [OK]
Hint: Whole numbers use Int, decimals use Double or Float [OK]
Common Mistakes:
  • Choosing Double or Float for whole numbers
  • Confusing String with number types
2.

Which of the following is the correct way to declare a variable price as a Double with value 19.99 in Swift?

?
easy
A. var price: Int = 19.99
B. var price = 19.99f
C. var price: Double = 19.99
D. var price: Float = "19.99"

Solution

  1. Step 1: Check type and value compatibility

    Double can store decimal numbers like 19.99 correctly.
  2. Step 2: Validate syntax

    var price: Double = 19.99 uses correct syntax: variable name, type annotation, and decimal value.
  3. Final Answer:

    var price: Double = 19.99 -> Option C
  4. Quick Check:

    Double declaration syntax = var name: Double = value [OK]
Hint: Use var name: Double = value for decimals [OK]
Common Mistakes:
  • Using 'f' suffix which is invalid in Swift
  • Assigning decimal to Int type
  • Using quotes for numbers
3.

What will be the output of this Swift code?

let a: Float = 3.14
let b: Double = 3.14
print(a == b)
medium
A. false
B. true
C. Compile-time error
D. Runtime error

Solution

  1. Step 1: Understand type comparison

    Float and Double are different types; comparing them directly requires conversion.
  2. Step 2: Check equality operation

    Swift allows comparing Float and Double, but values may differ due to precision, so a == b is false.
  3. Final Answer:

    false -> Option A
  4. Quick Check:

    Float vs Double equality = false [OK]
Hint: Float and Double differ in precision; direct equality often false [OK]
Common Mistakes:
  • Assuming Float and Double are equal if values look same
  • Expecting compile error for comparing different types
4.

Identify the error in this Swift code snippet:

var x: Int = 10.5
var y: Float = 20
medium
A. Cannot assign integer 20 to Float variable
B. Cannot assign decimal 10.5 to Int variable
C. Missing semicolon after variable declarations
D. Variable names are invalid

Solution

  1. Step 1: Check variable type and assigned value

    Variable x is Int but assigned 10.5 which is a decimal number.
  2. Step 2: Validate other assignments

    Variable y is Float and assigned 20 (an integer), which is allowed by implicit conversion.
  3. Final Answer:

    Cannot assign decimal 10.5 to Int variable -> Option B
  4. Quick Check:

    Int cannot hold decimals [OK]
Hint: Int variables cannot hold decimal values [OK]
Common Mistakes:
  • Thinking Float cannot hold integer values
  • Expecting semicolons in Swift
  • Assuming variable names are invalid
5.

You want to store the value 0.123456789 in Swift with the highest precision possible. Which type should you choose and why?

hard
A. Double, because it stores decimal numbers with more precision
B. Float, because it uses less memory
C. Int, because it stores whole numbers accurately
D. String, to keep exact digits

Solution

  1. Step 1: Understand precision needs

    The number 0.123456789 has many decimal places requiring high precision.
  2. Step 2: Compare Swift types for precision

    Double stores decimal numbers with more precision than Float; Int stores whole numbers only.
  3. Step 3: Consider String

    String stores text, not numbers, so it cannot be used for numeric calculations.
  4. Final Answer:

    Double, because it stores decimal numbers with more precision -> Option A
  5. Quick Check:

    Highest decimal precision = Double [OK]
Hint: Use Double for precise decimal numbers [OK]
Common Mistakes:
  • Choosing Float for high precision decimals
  • Using Int for decimal numbers
  • Using String for numeric calculations
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