# Ruby Number Examples: Integer, Float, zero and eql

Use numbers and the zero and eql methods. Convert strings into Integers and Floats.
Numbers. Inside, the cave is still. Lights appear upon the cold dark surface wall. Each light is on or off (like a bit, which is set or not set). The lights could represent numbers.
Ruby examples. Numeric types and conversions are done in Ruby code (not usually in caves). Many programs use the Integer and Float built-in methods.
Integer, Float. Here we convert string data to number types. A string may contain digits but not be a number. With the Integer conversion, we convert it to one. We also use Float.

Here: We convert the string "1234" into an Integer. And we convert a string with floating-point data into a Float.

Then: We add the 2 numbers together. This shows they are no longer strings, which could not be added in this way.

Ruby program that converts strings, numbers # Two strings with numeric contents. value1 = "1234" value2 = "1234.5678" # Convert strings to numbers. number1 = Integer(value1) number2 = Float(value2) # Print numbers. print "Number1: ", number1, "\n" print "Number2: ", number2, "\n" # Add numbers together. # ... Could not be done with strings. number3 = number1 + number2 # Print final number. print "Number3: ", number3, "\n" Output Number1: 1234 Number2: 1234.5678 Number3: 2468.5678
Exponents. We can directly use exponents, with the two-star operator. In this program, we raise a value to the power of two, and then to the power of three.

Tip: More advanced mathematical operations are available as methods in the Math class.

Ruby program that uses exponents # An initial value. value = 3 # Square the value. square = value ** 2 # Cube the value. cube = value ** 3 # Display our results. puts square puts cube Output 9 27
Zero, nonzero. Zero() returns true or false. If the number is zero, it returns true. Otherwise, it returns false. Nonzero meanwhile returns the original number if it is not zero.

And: If the number is zero, nonzero returns nil. So it returns the number with 0 changed to nil.

Ruby program that uses zero, nonzero value = 0 if value.zero? puts "A" end if value.nonzero? puts "B" # Not reached. end value = 1 if value.nonzero? puts "C" end Output A C
Eql operator. Unlike the "==" operator, eql compares types. So a floating point number, like 1.0, is not equal to an Integer number like 1. The == operator treats them as equal.

Tip: Using the == operator is superior in most programs. The eql method just adds complexity—1.0 usually should equal 1.

Ruby program that uses eql value1 = 1 value2 = 1.0 value3 = 1 if value1.eql? value2 puts "A" # Not reached. end if value1 == value2 puts "B" end if value1.eql? value3 puts "C" end Output B C
Random numbers. With the rand method we generate a pseudo-random number. The srand method is used to seed our random number generator.rand
Math. Some numeric operations can be done directly, with operators like + or minus. But many math methods exist, included for easy access. These handle more complex things like sqrt.Math
A summary. Tasks that involve numbers are often language-specific. In Ruby, we have many helpful operators available on numbers. We convert and manipulate numbers with ease.
© 2007-2020 Sam Allen. Every person is special and unique. Send bug reports to info@dotnetperls.com.
Home
Dot Net Perls