Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
43
Task/Dot-product/Visual-Basic/dot-product.vb
Normal file
43
Task/Dot-product/Visual-Basic/dot-product.vb
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
Option Explicit
|
||||
|
||||
Function DotProduct(a() As Long, b() As Long) As Long
|
||||
Dim l As Long, u As Long, i As Long
|
||||
Debug.Assert DotProduct = 0 'return value automatically initialized with 0
|
||||
l = LBound(a())
|
||||
If l = LBound(b()) Then
|
||||
u = UBound(a())
|
||||
If u = UBound(b()) Then
|
||||
For i = l To u
|
||||
DotProduct = DotProduct + a(i) * b(i)
|
||||
Next i
|
||||
Exit Function
|
||||
End If
|
||||
End If
|
||||
Err.Raise vbObjectError + 123, , "invalid input"
|
||||
End Function
|
||||
|
||||
Sub Main()
|
||||
Dim a() As Long, b() As Long, x As Long
|
||||
ReDim a(2)
|
||||
a(0) = 1
|
||||
a(1) = 3
|
||||
a(2) = -5
|
||||
ReDim b(2)
|
||||
b(0) = 4
|
||||
b(1) = -2
|
||||
b(2) = -1
|
||||
x = DotProduct(a(), b())
|
||||
Debug.Assert x = 3
|
||||
ReDim Preserve a(3)
|
||||
a(3) = 10
|
||||
ReDim Preserve b(3)
|
||||
b(3) = 2
|
||||
x = DotProduct(a(), b())
|
||||
Debug.Assert x = 23
|
||||
ReDim Preserve a(4)
|
||||
a(4) = 10
|
||||
On Error Resume Next
|
||||
x = DotProduct(a(), b())
|
||||
Debug.Assert Err.Number = vbObjectError + 123
|
||||
Debug.Assert Err.Description = "invalid input"
|
||||
End Sub
|
||||
Loading…
Add table
Add a link
Reference in a new issue