답변:
정수 나누기를하고 있습니다. to_f
물건을 부동 소수점 모드로 강제 하는 데 사용할 수 있습니다 .
9.to_f / 5 #=> 1.8
9 / 5.to_f #=> 1.8
값이 리터럴 대신 변수 인 경우에도 작동합니다. 하나의 값을 부동 소수점으로 변환하면 전체 표현식을 부동 소수점 산술로 강제 변환하기에 충분합니다.
Numeric#fdiv
대신 사용할 수 있는 방법 도 있습니다.
9.fdiv(5) #=> 1.8
Fixnum # to_r은 여기에 언급되지 않았으며 루비 1.9부터 도입되었습니다. Fixnum을 합리적인 형식으로 변환합니다. 아래는 그 사용 예입니다. 또한 사용 된 모든 숫자가 Fixnum 인 경우 정확한 나눗셈을 제공 할 수 있습니다.
a = 1.to_r #=> (1/1)
a = 10.to_r #=> (10/1)
a = a / 3 #=> (10/3)
a = a * 3 #=> (10/1)
a.to_f #=> 10.0
합리적인 수로 플로트를 조작 한 결과가 플로트에 적용되는 예입니다.
a = 5.to_r #=> (5/1)
a = a * 5.0 #=> 25.0
def method; a - b/8; end
메소드 호출의 마지막 식 리턴 값이기 때문에, 상기 방법으로 계산 된 결과를 리턴한다.