\( \displaystyle a = \vec{B} \cdot \vec{C} \)
\( a \) : 変数 Ans
\( \vec{B} \) : 配列変数 Vector1()
\( \vec{C} \) : 配列変数 Vector2()
Start |
||||
Long型変数 n の宣言と セル B2 で初期化 |
Dim n As Long: n = Cells(2,2) | |||
Double型配列変数 Vector1 の動的宣言、 要素番号1 から n |
Dim Vector1() As Double: ReDim Vector1(1 To n) | |||
Double型配列変数 Vector2 の動的宣言、 要素番号1 から n |
Dim Vector2() As Double: ReDim Vector2(1 To n) | |||
繰返し変数 i の宣言 Long型 |
Dim i As Long | |||
i = 1, n, 1 |
Vector1(i) に Cells(3, i + 1) を代入. |
For i = 1 To n Step 1 Vector1(i) = Cells(3, i + 1) |
||
Vector2(i) に Cells(4, i + 1) を代入. |
Vector2(i) = Cells(4, i + 1) Next i |
|||
Double型変数 Ans の宣言 |
Dim Ans As Double | |||
Ans に VectorInnerPro(Vector1(), Vector2()) の結果を代入. |
Ans = VectorInnerPro(Vector1(), Vector2()) | |||
Cells(5, 2) に Ans を代入. |
Cells(5, 2) = Ans | |||
End |
関数の宣言
Function VectorInnerPro(【仮引数の宣言】)【関数の戻り値の宣言】
End Function
【仮引数の宣言】ByRef A1() As Double, ByRef A2() As Double
【関数の戻り値の宣言】As Double
\( \displaystyle a = \vec{B} \cdot \vec{C} \)
\( a \) : 戻り値 Double型変数 Sum
\( \vec{B} \) : 仮引数 Double型配列変数 A1()
\( \vec{C} \) : 仮引数 Double型配列変数 A2()
Start |
Function VectorInnerPro(【仮引数の宣言】)【関数の戻り値の宣言】 | |||
Long型変数 LB の宣言と 仮引数の配列変数 A1 の 最小要素番号で初期化 |
Dim LB As Long: LB = LBound(A1) | |||
Long型変数 UB の宣言と 仮引数の配列変数 A1 の 最大要素番号で初期化 |
Dim UB As Long: UB = UBound(A1) | |||
Double型変数 Sum の宣言 0 で初期化 |
Dim Sum As Double: Sum = 0# | |||
繰返し変数 i の宣言 Long型 |
Dim i As Long | |||
i = LB, UB, 1 |
Sum に Sum + A1(i) × A2(i) を代入. |
For i = LB To UB Step 1 Sum = Sum + A1(i) * A2(i) Next i |
||
関数 VectorInnerPro の戻り値を Sum に設定. |
VectorInnerPro = Sum | |||
End |
End Function |