Bird
Raised Fist0
Rubyprogramming~10 mins

Integer and Float number types in Ruby - Interactive Code Practice

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

Complete the code to assign an integer value to the variable.

Ruby
number = [1]
Drag options to blanks, or click blank then click option'
A3.14
B"100"
C42
Dtrue
Attempts:
3 left
💡 Hint
Common Mistakes
Using a float value instead of an integer.
Putting the number inside quotes, making it a string.
2fill in blank
medium

Complete the code to assign a float value to the variable.

Ruby
pi = [1]
Drag options to blanks, or click blank then click option'
A3.14
B"3.14"
C22
Dtrue
Attempts:
3 left
💡 Hint
Common Mistakes
Using an integer instead of a float.
Using quotes around the number, making it a string.
3fill in blank
hard

Fix the error in the code to correctly convert the string to an integer.

Ruby
number = "123"
converted = [1]
Drag options to blanks, or click blank then click option'
Anumber.to_sym
Bnumber.to_f
Cnumber.to_s
Dnumber.to_i
Attempts:
3 left
💡 Hint
Common Mistakes
Using to_f which converts to float, not integer.
Using to_s which keeps it as string.
4fill in blank
hard

Fill both blanks to create a hash with word lengths only for words longer than 4 characters.

Ruby
words = ["apple", "cat", "banana", "dog"]
lengths = {word => word.[1] for word in words if word.[2] > 4}
Drag options to blanks, or click blank then click option'
Alength
Bsize
Clength?
Dcount
Attempts:
3 left
💡 Hint
Common Mistakes
Using length? which is not a valid method.
Using count which counts characters but is less common here.
5fill in blank
hard

Fill all three blanks to create a hash with uppercase words as keys and their float lengths as values for words longer than 3 characters.

Ruby
words = ["pear", "fig", "grape", "kiwi"]
result = { [1] => [2].length.[3] for [2] in words if [2].length > 3 }
Drag options to blanks, or click blank then click option'
Aword.upcase
Bword
Cto_f
Dlength
Attempts:
3 left
💡 Hint
Common Mistakes
Using length without converting to float.
Using wrong variable names or missing the iteration variable.

Practice

(1/5)
1. Which of the following is an example of an Integer in Ruby?
easy
A. "100"
B. 3.14
C. true
D. 42

Solution

  1. Step 1: Understand Integer definition

    An Integer is a whole number without any decimal part.
  2. Step 2: Identify the correct option

    42 is a whole number, so it is an Integer. 3.14 has decimals (Float), "100" is a string, and true is a boolean.
  3. Final Answer:

    42 -> Option D
  4. Quick Check:

    Integer = 42 [OK]
Hint: Integers have no decimal point, floats do. [OK]
Common Mistakes:
  • Confusing strings with numbers
  • Thinking floats are integers
  • Mixing booleans with numbers
2. Which of the following is the correct way to write a float number in Ruby?
easy
A. 5.5
B. 5-5
C. 5..5
D. 5,5

Solution

  1. Step 1: Recall float syntax in Ruby

    Floats use a dot (.) to separate the whole number and decimal parts.
  2. Step 2: Check each option

    5.5 uses a dot correctly. 5,5 uses a comma which is invalid. 5..5 is a range syntax, not a float. 5-5 is subtraction.
  3. Final Answer:

    5.5 -> Option A
  4. Quick Check:

    Float uses dot like 5.5 [OK]
Hint: Floats always use a dot, never a comma. [OK]
Common Mistakes:
  • Using commas instead of dots
  • Confusing ranges with floats
  • Using operators instead of decimal points
3. What will be the output of this Ruby code?
num1 = 10
num2 = 3.0
result = num1 / num2
puts result
medium
A. 3.0
B. 3
C. 3.3333333333333335
D. 3.333

Solution

  1. Step 1: Understand division with Integer and Float

    Dividing an Integer by a Float returns a Float result in Ruby.
  2. Step 2: Calculate 10 / 3.0

    10 divided by 3.0 equals approximately 3.3333333333333335 as a Float.
  3. Final Answer:

    3.3333333333333335 -> Option C
  4. Quick Check:

    Integer / Float = Float result [OK]
Hint: Integer divided by float gives float result. [OK]
Common Mistakes:
  • Expecting integer division truncation
  • Rounding the float result incorrectly
  • Confusing float with string output
4. Find the error in this Ruby code snippet:
num = 7.5
puts num.to_i.to_f
medium
A. SyntaxError due to method chaining
B. No error, output is 7.0
C. RuntimeError because to_i cannot be chained
D. Output is 7.5, no conversion happened

Solution

  1. Step 1: Understand method chaining on numbers

    Ruby allows chaining methods like to_i and to_f on numbers without error.
  2. Step 2: Evaluate the code output

    num.to_i converts 7.5 to 7 (integer), then to_f converts 7 to 7.0 (float). So output is 7.0.
  3. Final Answer:

    No error, output is 7.0 -> Option B
  4. Quick Check:

    Method chaining works, output 7.0 [OK]
Hint: to_i then to_f converts float to integer then float again. [OK]
Common Mistakes:
  • Thinking method chaining causes syntax error
  • Expecting original float output
  • Confusing to_i and to_f effects
5. You want to calculate the average of two numbers in Ruby, where both are Integers. Which code correctly calculates the average as a Float?
a = 8
b = 5
average = ?
hard
A. (a + b) / 2.0
B. (a + b) / 2
C. (a.to_i + b.to_i) / 2
D. a / 2 + b / 2

Solution

  1. Step 1: Understand division with integers and floats

    Dividing an Integer truncates if both operands are integers; dividing by a Float keeps decimal.
  2. Step 2: Check each option for correct average calculation

    (a + b) / 2: 13 (Integer) / 2 (Integer) = 6 (truncated).
    (a + b) / 2.0: 13 / 2.0 = 6.5 (Float).
    (a.to_i + b.to_i) / 2: forces Integers, result 6 (Integer).
    a / 2 + b / 2: 8/2 + 5/2 = 4 + 2 = 6 (Integer divisions).
  3. Final Answer:

    (a + b) / 2.0 -> Option A
  4. Quick Check:

    Divide sum by float 2.0 for float average [OK]
Hint: Divide by 2.0 to keep float result for average. [OK]
Common Mistakes:
  • Dividing by integer causing integer division
  • Converting floats to integers losing decimals
  • Not using float divisor for average
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