42 lines
553 B
Text
42 lines
553 B
Text
INT FUNC DotProduct(INT ARRAY v1,v2 BYTE len)
|
|
BYTE i,res
|
|
|
|
res=0
|
|
FOR i=0 TO len-1
|
|
DO
|
|
res==+v1(i)*v2(i)
|
|
OD
|
|
RETURN (res)
|
|
|
|
PROC PrintVector(INT ARRAY a BYTE size)
|
|
BYTE i
|
|
|
|
Put('[)
|
|
FOR i=0 TO size-1
|
|
DO
|
|
PrintI(a(i))
|
|
IF i<size-1 THEN
|
|
Put(',)
|
|
FI
|
|
OD
|
|
Put('])
|
|
RETURN
|
|
|
|
PROC Test(INT ARRAY v1,v2 BYTE len)
|
|
INT res
|
|
|
|
res=DotProduct(v1,v2,len)
|
|
PrintVector(v1,len)
|
|
Put('.)
|
|
PrintVector(v2,len)
|
|
Put('=)
|
|
PrintIE(res)
|
|
RETURN
|
|
|
|
PROC Main()
|
|
INT ARRAY
|
|
v1=[1 3 65531],
|
|
v2=[4 65534 65535]
|
|
|
|
Test(v1,v2,3)
|
|
RETURN
|