情報領域演習第一:P演習
電気通信大学情報理工学域I類 (情報系)
2024年度後学期
[一覧に戻る]
課題C1
問題
$n$ 次元実ベクトル $\boldsymbol{x}$ の長さ(ノルム)とは,
\[
\|\boldsymbol{x}\|=\sqrt{\sum_{i=1}^{n}x_i^2}
\]
で与えられる.
今,$n$ 次元実ベクトルが配列 arr で与えられたとき,
そのベクトルのノルムを計算するメソッド vec_norm(arr) を作成せよ.
ヒント
Rubyにおいて x の (正の) 平方根を計算するためには,Math.sqrt(x) を用いればよい.
入力仕様
- 1 ≦ $n$ ≦ 20
- 各 $i$ (0≦ $i$ ≦ $n-1$) に対して arr[$i$] は-30以上30以下の実数
出力仕様
- ノルムを表す数値のみ出力する.
- 小数点以下3桁までが正しくなくてはならない.
例
irb> vec_norm [1, 1, 1, 1, 1, 1, 1, 1, 1]
=> 3
irb> vec_norm [-18.666, -24.04, -10.336, -26.835, -6.809]
=> 42.422326173843885
irb> vec_norm [-7.369]
=> 7.369
irb> vec_norm [27.747, 15.291]
=> 31.681393435264177
提出法
CEDにて,プログラムを作成したディレクトリで以下を実行せよ.
% /ced-home/staff/enshu1p/checker_c1.rb ファイル名
「Submission successfully completed.」と表示されれば,提出が完了したことになる.
[一覧に戻る]