1. ホーム
  2. スクリプト・コラム
  3. ルビートピックス

Rubyにおける数値型と定数の例

2022-02-01 05:59:38

数値型(Number)
整数
整数には2種類あります。31ビット(4バイト)以内であれば、Fixnumインスタンスである。それ以上であれば、Bignumインスタンスです。
整数の範囲は-230から230-1または-262から262-1である。この範囲の整数は Fixnum クラスのオブジェクトに、この範囲の外側の整数は Bignum クラスのオブジェクトに格納されます。
整数の前に任意の先行記号、任意の基数指示子(8進数は0、16進数は0x、2進数は0b)、その後に数値列を使用することができる。数値文字列の中のアンダースコア文字は無視されます。
ASCII 文字またはクエスチョンマークでマークされたエスケープシーケンスの整数値を取得することができます。
インスタンス

123 # Fixnum decimal
1_234 # Fixnum decimal with underscore
-500 # Negative Fixnum
0377 # Octal
0xff # Hexadecimal
0b1011 # Binary
"a".ord # Character encoding for "a"
? \n # Encoding for line break (0x0a)
12345678901234567890 # Bignum
# Integer Integer The following are some integer literals 
# Literal: values that can be seen in the code, numeric values, bool values, strings, etc. are called literals 
# such as the following 0,1_000_000,0xa, etc. 
a1=0 

# integer with thousandths character 
a2=1_000_000 

#Other binary representations 
a3=0xa 
puts a1,a2 
puts a3 
#puts print is to print characters to the console, where puts brings back carriage returns 


=begin
This is the comment, called: embedded document comment
Similar to /**/ in C#
=end


浮動小数点型
Ruby は浮動小数点数をサポートしています。浮動小数点数とは、小数点を含む数値のことです。浮動小数点数は Float クラスのオブジェクトで、次のいずれかになります。
インスタンス

123.4 # Floating point value
1.0e6 # Scientific notation
4E20 # Not required
4e+20 # Sign before the exponent


#floating-point type 
f1=0.0 
f2=2.1 
f3=1000000.1 
puts f3 


算術演算

加算、減算、乗算、除算の演算子。+-*/; 指数演算子は ** です。
指数は整数である必要はありません。

#Exponential arithmetic 
puts 2**(1/4)#1 quotient of 4 is 0, then 0th power of 2 is 1 
puts 16**(1/4.0)#1 quotient of 4.0 is 0.25 (one quarter), then root of four

Ruby定数
定数は大文字で始まります。クラスやモジュールの内部で定義された定数は、そのクラスやモジュールの内部からアクセスでき、クラスやモジュールの外部で定義された定数は、グローバルにアクセスすることが可能です。
メソッド内部で定数を定義することはできません。初期化されていない定数を参照すると、エラーが発生します。すでに初期化されている定数に値を代入すると、警告が発生します。

#! /usr/bin/ruby
# -*- coding: UTF-8 -*-

class Example
  VAR1 = 100
  VAR2 = 200
  def show
    puts "The value of the first constant is #{VAR1}"
    puts "The value of the second constant is #{VAR2}"
  end
end

# Create an object
object=Example.new()
object.show



ここで、VAR1 と VAR2 は定数です。これにより、以下のような結果が得られます。

The first constant has a value of 100
The value of the second constant is 200