Bird
Raised Fist0
Rubyprogramming~5 mins

Integer and Float number types in Ruby

Choose your learning style10 modes available
Introduction

We use integers and floats to work with whole numbers and numbers with decimals in programs.

Counting items like apples or books (use integers).
Measuring weight or height that can have decimals (use floats).
Calculating prices with cents in shopping apps.
Doing math like adding, subtracting, or dividing numbers.
Storing age as whole years or temperature with decimals.
Syntax
Ruby
integer_number = 10
float_number = 3.14

Integers are whole numbers without decimals.

Floats are numbers that have decimal points.

Examples
Here, age is an integer and price is a float.
Ruby
age = 25
price = 19.99
Integers can be positive or negative whole numbers. Floats can also be negative.
Ruby
count = 100
temperature = -5.5
Adding an integer and a float results in a float.
Ruby
sum = 5 + 3.2
puts sum
Sample Program

This program shows how to create integer and float variables, add them, and print the results.

Ruby
integer_number = 7
float_number = 2.5
sum = integer_number + float_number
puts "Integer: #{integer_number}"
puts "Float: #{float_number}"
puts "Sum: #{sum}"
OutputSuccess
Important Notes

In Ruby, integers and floats are different types but you can mix them in math.

Division with integers can produce floats if needed.

Summary

Integers are whole numbers without decimals.

Floats are numbers with decimals.

You can do math with both types in Ruby easily.

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