【ruby】順列を使った四則演算をしたかった話。


スクリーンショット 2015-01-17 12.54.21

卒論現実逃避!エロい人教えて!
卒論執筆に驚く程やる気がでなくなってしまったので気分転換に頭のストレッチをやることにしました!
今回のお題は四則演算です!ちなみに僕は解けずに諦めました。疲れました。頭のストレッチを始める前よりもやる気が底を尽きました。

#ネガティブマン



計算する順番をいじる

#順列

array = [3,4,7,8]
array.permutation(4){ 
|a,b,c,d|
e = a+b-c+d
printf("%d+%d-%d+%d=%d \n", a, b, c, d, e) }
puts ""

たとえば4つの数字が与えられていてそれをランダムに四則演算する時に手でいちいち解いていたら日が暮れますよね。なのでこんな感じでコードを書いてあげると楽なのです。

でも四則演算って足し算引き算だけではないので、計算に出てくる記号をコンビネーションで指定しようと思ってとりあえずコンビネーションを書いてみました。

symbol = ["+", "-", "*", "/"]
double = symbol.combination(3)
puts double.collect {|a,b,c| puts a+b+c}

これらを上手く組み合わせられたら物凄く楽に四則演算が出来たのでしょうけれども、ここでつまづいて僕は何も出来ずにのめのめと帰ってきました。せっかく気分転換にアルゴリズムの練習したのに気分転換になりませんでした!

#悲しみ

どなたかrubyで加減乗除をランダムにやる方法知っている方いらっしゃいましたらコメント残して行って頂けるとスキップして喜びます。


最後まで読んでいただきありがとうございます。もしこの記事を気に入って頂けたようであればシェアをお願い致します。非常に励みになります。


コメントを残す