数学関数を使うので、include(Math)の入力を忘れずにしましょう。
- 平面上の2 点(x, y) と(u, v) の距離を求める distance(x,y,u,v).
def distance(x,y,u,v)
sqrt((x-u)**2+(y-v)**2))
end
"def"は「次のような関数を定義する」という意味。"end"で関数定義を終わらせています。
- fフィートiインチをセンチメートルに変換する feet_to_cm(f,i).ただし、1 フィート= 12 インチ = 30.48 cm である。
def feet_to_cm(f,i)
(f+i/12.0)*30.48
end
- pポンドoオンスをキログラムに変換する pound_to_kg(p,o).1 ポンド= 16 オンス= 0.4536 kg である。
def pound_to_kg(p,o)
(p+0/16.0)*0.4536
end
- 二次方程式ax^2+bx+cに関して
(a) 判別式b2 − 4ac を求めるdet(a,b,c).
def det(a,b,c)
b**2-4*a*c
end
(b) 解の1 つを求めるsolution1(a,b,c). (det を使って 定義せよ。)
def solution1(a,b,c)
(-b+sqrt(det(a,b,c)))/(2.0*a)
end
(c) もう1 つの解を求めるsolution2(a,b,c).(solution1 とsolution2 の共通部分を1つの補助関数にできるか?)
def solution2(a,b,c)
(-b-sqrt(det(a,b,c)))/(2.0*a)
end
(d) 二次関数f(x) = ax2+bx+c の値を求める quadratic(a,b,c,x).
def quadratic(a,b,c,x)
a*x**2+b*x+c
end
0 件のコメント:
コメントを投稿