Sha256: 0535d77ae53bf177c32fe3273959606dc8adb7f9896ae838f7a153c8fdeed7c0
Contents?: true
Size: 1.4 KB
Versions: 7
Compression:
Stored size: 1.4 KB
Contents
# frozen_string_literal: true # :nodoc: module Zakuro # :nodoc: module Calculation # :nodoc: module Type # # OldFloat 浮動小数点数(古代) # # @note 四捨五入は常に絶対値に対して行う # * value.negative? ? value.ceil : value.floor # * 絶対値だけを取り出すことで、四捨五入を平易にする # class OldFloat # @return [Integer] 符号 attr_reader :sign # @return [Float] 絶対値 attr_reader :abs # # 初期化 # # @param [Float] value 符号つき浮動小数点数 # def initialize(value) @sign = value.negative? ? -1 : 1 @abs = @sign * value end # # 四捨五入する # def floor! @abs = floor end # # 四捨五入する(非破壊的) # # @return [Float] 絶対値 # def floor abs.floor end # # 符号つき浮動小数点数を取得する # # @return [Float] 符号つき浮動小数点数 # def get sign * abs end # # 負数かどうか # # @return [True] 負数 # @return [False] 正数 # def negative? @sign == -1 end end end end end
Version data entries
7 entries across 7 versions & 1 rubygems