- Ruby 初心者スレッド Part 56©2ch.net
900 :デフォルトの名無しさん[sage]:2015/03/01(日) 02:38:06.70 ID:vUz0ZLJI - coe[0]*coe[4] - coe[1]*coe[3]を三回も計算しているから俺ならこうする。
unless (denom = coe[0]*coe[4] - coe[1]*coe[3]).zero? x = (coe[2]*coe[4] - coe[1]*coe[5])/denom y = (coe[0]*coe[5] - coe[2]*coe[3])/denom あとputs "%.3f %.3f"%[x, y]って書くな。 -0はなったこと無いからわからん。
|
- Ruby 初心者スレッド Part 56©2ch.net
902 :デフォルトの名無しさん[sage]:2015/03/01(日) 02:47:46.19 ID:vUz0ZLJI - puts -0.0 #=> -0.0
ってなったわ。なるほど。 puts -0.0+0 #=> 0.0 これでもいけるみたい。
|
- Ruby 初心者スレッド Part 56©2ch.net
906 :デフォルトの名無しさん[sage]:2015/03/01(日) 03:19:22.20 ID:vUz0ZLJI - >>904
"%.3f"%[x] + " " + "%.3f"%[y]は String#%とString#+を2回ずつやってるから "%.3f %.3f"%[x, y]ってやった方が早いよ。読み易いし(個人的に)。 あと例の部分は x = x.abs if x.zero? とかってした方が分かり易いような。
|