AR삽질러

Ruby 定数 ・ 数値 본문

Ruby/Ruby-日本語

Ruby 定数 ・ 数値

아랑팡팡 2023. 12. 13. 14:59
728x90

 

Ruby 定数

 

定数(ていすう、じょうすう)Integer

 - 変化しない(または頻繫に変化しない)値を扱う時に使う

 ex) 手数料率、消費税率、円周率

 

irb#1(main):030> TAX = 1.08
=> 1.08
irb#1(main):031> puts TAX
1.08
=> nil
irb#1(main):032> TAX_RATE = 1.08
=> 1.08
irb#1(main):033> puts TAX_RATE
1.08
=> nil
irb#1(main):034> TAX_RATE = 1.1
(irb#1):34: warning: already initialized constant TAX_RATE
(irb#1):32: warning: previous definition of TAX_RATE was here
=> 1.1
irb#1(main):035> puts TAX_RATE
1.1
=> nil

 

 


 

リテラルとは

 - 数値の123や、文字列の’Hello Word!' など

- Rubyのプログラムの中に直接記述できる値のことをリテラルという。

 

リテラルの例

数値

 - 123

文字列

 - 'Hello Rudy!' "Hello Ruby!"

配列

 - [1, 2, 3], [ 'apply', 'banana', 'cherry' ]

ハッシュ(連想配列)

 - { 'red' => '#ff0000', 'green' => '00ff00', 'blue' => 0000ff' }, { 'name' => 'ARANG', 'age' => 20 }

シンボル

 - :username :arang

 


 

Ruby 数値

 

Numeric : 数値Class

 Integer : 整数Class

 Float  : 浮動小数点数Class

 

動的型付け

 - 変数に値を代入する時に、動的型付けがされる

 - 変数の型指定を変数の宣言時に行う必要なし

ok : i = 1   ng : int i = 0

irb#1(main):040> 100
=> 100
irb#1(main):041> -50
=> -50
irb#1(main):042> 2.5
=> 2.5
irb#1(main):043> -5.2
=> -5.2
irb#1(main):044> 1 + 1
=> 2
irb#1(main):045> 10 - 1
=> 9
irb#1(main):046> 13 * 2
=> 26
irb#1(main):047> 100 / 5
=> 20
irb#1(main):048> x = 1
=> 1
irb#1(main):049> -x
=> -1

 

 

Type変換

 - to_f : 数を浮動小数点に変換させる。

 - x.to_f / 2 : xを浮動小数点に変換した後2に分ける

 - x.to_f / y または x / y.to_f : 一つが浮動小数点になっているので 浮動小数点に変換される。

 

ObjectのClassとMethod確認

 - .class : MethodはObjectを変換する

 - .method : Objectが使えるすべてのMethodのListを変換する

irb#1(main):050> 3 / 2
=> 1
irb#1(main):051> 3.0 / 2
=> 1.5
irb#1(main):052> 10 % 3
=> 1
irb#1(main):053> 10 ** 3
=> 1000
irb#1(main):054> x = 3
=> 3
irb#1(main):055> x.to_f
=> 3.0
irb#1(main):056> x.to_f / 2
=> 1.5
irb#1(main):057> y = 2
=> 2
irb#1(main):058> x / y.to_f
=> 1.5
irb#1(main):059> x.to_f / y
=> 1.5
irb#1(main):060> x.to_f / y.to_f
=> 1.5
irb#1(main):061> 1.class
=> Integer
irb#1(main):062> 1.1.class
=> Float
irb#1(main):063> 1.methods
=> 
[:remainder,
 :gcd,
 :lcm,
 :gcdlcm,
 :~,
 :floor,
 :ceil,
 :round,
 :truncate,
 :**,
 :<=>,
 :>=,
 :==,
 :allbits?,
 :anybits?,

 

 

 

728x90
반응형
LIST

'Ruby > Ruby-日本語' 카테고리의 다른 글

Ruby 比較演算子  (0) 2023.12.13
Ruby 文字列  (0) 2023.12.13
Object指向プログラミング言語の概要  (0) 2023.12.13
Ruby 変数  (0) 2023.12.13
Ruby Hello, Ruby!  (0) 2023.12.13