[ 前へ | 目次 | 次へ ]

ベクトル演算

ここでは、配列同士の演算である、ベクトル演算を扱います。

ベクトル演算

ベクトル演算とは、大量の値に対して、同じ処理規則を適用するような演算のことです。 これに対し、1 つずつの値に対する演算をスカラ演算と呼びます。

VCSSL では、配列変数同士の演算において、全要素に同じ演算を行うベクトル演算をサポートしています。

ベクトル演算を行うには、原則として、式の中にある全配列変数の次元と要素数が等しい必要があります。 ただし代入(=)では要素数が異なっても構いません。 また、式には配列でない変数を含ませる事も可能で、その場合、配列でない変数は、 要素が全て等しい配列変数と同様に扱われます。

ベクトル演算子

VCSSL では、以下のようなベクトル演算子がサポートされています:

記号 意味 扱える型 詳細
 = ベクトル
代入演算
全ての型 右の配列の中身を、左の配列に代入します。代入後の左辺の要素数は、右辺と同じになります。
 + ベクトル
加算
int,
float,
complex,
varint,
varfloat,
varcomplex,
string
右の配列の中身と、左の配列の中身を、同じインデックスのもの同士で全て加算します。配列の次元と要素数が異なる場合には使用できません。
 - ベクトル
減算
int,
float,
complex,
varint,
varfloat,
varcomplex
ベクトル加算が減算になったものです。
 * ベクトル
乗算
int,
float,
complex,
varint,
varfloat,
varcomplex
ベクトル加算が乗算になったものです。
 / ベクトル
除算
int,
float,
complex,
varint,
varfloat,
varcomplex
ベクトル加算が除算になったものです。
 % ベクトル
剰余算
int,
varint
ベクトル加算が剰余算になったものです。
 ** ベクトル
指数
float,
varfloat
ベクトル加算が指数演算になったものです。

ベクトル加算を行う

実際に、ベクトル加算を行ってみましょう:

- 実行結果 -

30

これを実行すると 30 が表示されます。少し長いプログラムなので、処理内容を追ってみましょう。

まず、要素数が11 個の配列a,b が用意され、そしてa の中には1 から10 までの整数の2 乗が代入され、 b の中には1 から10 までの整数がそのまま代入されます。 続いて、要素数が11 個の配列c が用意されます。

続いて「 c = a + b 」というベクトル加算が実行され、これにより、c の中身には、

c[0] = a[0] + b[0] ;
c[1] = a[1] + b[1] ;

c[10] = a[10] + b[10] ;

という内容が代入されます。

そしてc[5]を出力する関数が呼ばれ、プログラムが終了します。

c[5]には5*5+5 が入っているはずですから、確かに30 という値は正しいものです。 つまり、正常にベクトル演算が実行できた事がわかります。



スポンサーリンク



この階層の目次
お知らせ

リニアングラフ3Dをアップデート、次期版(Ver.6)の開発もスタート
2023/09/04 - リニアングラフ3Dのアップデート版をリリースしました。また、次期メジャーバージョンである Ver.6 系の開発も開始しました。それぞれについて解説します。

AIの補助により、英語版ドキュメントを大幅拡充へ - 作業の舞台裏も紹介!
2023/05/28 - RINEARNでは今後、ChatGPT等のAIの補助により、英語版ドキュメントを大幅に拡充していく方針です。既に行った英訳作業の様子なども紹介しつつ、詳しく解説します。

リニアングラフ3Dをアップデート、API関連機能などを拡充
2023/05/18 - リニアングラフ3Dのアップデート版をリリースしました。主に、Java言語やVCSSLでの制御機能などを拡充しました。更新内容をそれぞれ詳しく解説します。

新着
[公式ガイドサンプル] 各種の図形や画像を描画する

「VCSSL 2DCG開発ガイド」内のサンプルコードです。図形や画像などを描画します。
2022/12/16
角度の「度」とラジアンとを相互変換し、図示もするツール

45度などの「度」の値と、ラジアンの値とを相互に変換できるツールです。対応する角度の図示もできます。
2022/11/22
[公式ガイドサンプル] 立体モデルを回転させるアニメーション

「VCSSL 3DCG開発ガイド」内のサンプルコードです。立体モデルを、アニメーションで回転させ続けます
2022/11/18
[公式ガイドサンプル] 立体モデルを回転させる

「VCSSL 3DCG開発ガイド」内のサンプルコードです。立体モデルを、指定した角度だけ回転させます。
2022/11/17
[公式ガイドサンプル] 四則演算の計算順序や、カッコを使った順序指定

「VCSSLスタートアップガイド」内のサンプルコードです。四則演算が計算される順序や、カッコを使って順序を指定する方法を例示します。
2022/10/31