Data update
This commit is contained in:
parent
29a5eea0d4
commit
5c1bb7bfa9
2011 changed files with 35081 additions and 3229 deletions
42
Task/Kronecker-product/BASIC256/kronecker-product.basic
Normal file
42
Task/Kronecker-product/BASIC256/kronecker-product.basic
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
arraybase 1
|
||||
dim a(2, 2)
|
||||
a[1,1] = 1 : a[1,2] = 2 : a[2,1] = 3 : a[2,2] = 4
|
||||
dim b(2, 2)
|
||||
b[1,1] = 0 : b[1,2] = 5 : b[2,1] = 6 : b[2,2] = 7
|
||||
call kronecker_product(a, b)
|
||||
|
||||
print
|
||||
dim x(3, 3)
|
||||
x[1,1] = 0 : x[1,2] = 1 : x[1,3] = 0
|
||||
x[2,1] = 1 : x[2,2] = 1 : x[2,3] = 1
|
||||
x[3,1] = 0 : x[3,2] = 1 : x[3,3] = 0
|
||||
dim y(3, 4)
|
||||
y[1,1] = 1 : y[1,2] = 1 : y[1,3] = 1 : y[1,4] = 1
|
||||
y[2,1] = 1 : y[2,2] = 0 : y[2,3] = 0 : y[2,4] = 1
|
||||
y[3,1] = 1 : y[3,2] = 1 : y[3,3] = 1 : y[3,4] = 1
|
||||
call kronecker_product(x, y)
|
||||
end
|
||||
|
||||
subroutine kronecker_product(a, b)
|
||||
ua1 = a[?][]
|
||||
ua2 = a[][?]
|
||||
|
||||
ub1 = b[?][]
|
||||
ub2 = b[][?]
|
||||
|
||||
for i = 1 to ua1
|
||||
for k = 1 to ub1
|
||||
print "[";
|
||||
for j = 1 to ua2
|
||||
for l = 1 to ub2
|
||||
print rjust(a[i, j] * b[k, l], 2);
|
||||
if j = ua1 and l = ub2 then
|
||||
print "]"
|
||||
else
|
||||
print " ";
|
||||
endif
|
||||
next
|
||||
next
|
||||
next
|
||||
next
|
||||
end subroutine
|
||||
15
Task/Kronecker-product/EasyLang/kronecker-product.easy
Normal file
15
Task/Kronecker-product/EasyLang/kronecker-product.easy
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
func[][] krpr a[][] b[][] .
|
||||
for m = 1 to len a[][]
|
||||
for p = 1 to len b[][]
|
||||
r[][] &= [ ]
|
||||
for n = 1 to len a[m][]
|
||||
for q = 1 to len b[p][]
|
||||
r[$][] &= a[m][n] * b[p][q]
|
||||
.
|
||||
.
|
||||
.
|
||||
.
|
||||
return r[][]
|
||||
.
|
||||
print krpr [ [ 1 2 ] [ 3 4 ] ] [ [ 0 5 ] [ 6 7 ] ]
|
||||
print krpr [ [ 0 1 0 ] [ 1 1 1 ] [ 0 1 0 ] ] [ [ 1 1 1 1 ] [ 1 0 0 1 ] [ 1 1 1 1 ] ]
|
||||
42
Task/Kronecker-product/Yabasic/kronecker-product.basic
Normal file
42
Task/Kronecker-product/Yabasic/kronecker-product.basic
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
print
|
||||
dim a(2, 2)
|
||||
a(1,1) = 1 : a(1,2) = 2 : a(2,1) = 3 : a(2,2) = 4
|
||||
dim b(2, 2)
|
||||
b(1,1) = 0 : b(1,2) = 5 : b(2,1) = 6 : b(2,2) = 7
|
||||
kronecker_product(a, b)
|
||||
|
||||
print
|
||||
dim a(3, 3)
|
||||
a(1,1) = 0 : a(1,2) = 1 : a(1,3) = 0
|
||||
a(2,1) = 1 : a(2,2) = 1 : a(2,3) = 1
|
||||
a(3,1) = 0 : a(3,2) = 1 : a(3,3) = 0
|
||||
dim b(3, 4)
|
||||
b(1,1) = 1 : b(1,2) = 1 : b(1,3) = 1 : b(1,4) = 1
|
||||
b(2,1) = 1 : b(2,2) = 0 : b(2,3) = 0 : b(2,4) = 1
|
||||
b(3,1) = 1 : b(3,2) = 1 : b(3,3) = 1 : b(3,4) = 1
|
||||
kronecker_product(a, b)
|
||||
end
|
||||
|
||||
sub kronecker_product(a, b)
|
||||
local i, j, k, l
|
||||
ua1 = arraysize(a(), 1)
|
||||
ua2 = arraysize(a(), 2)
|
||||
ub1 = arraysize(b(), 1)
|
||||
ub2 = arraysize(b(), 2)
|
||||
|
||||
for i = 1 to ua1
|
||||
for k = 1 to ub1
|
||||
print "[";
|
||||
for j = 1 to ua2
|
||||
for l = 1 to ub2
|
||||
print a(i, j) * b(k, l) using "##";
|
||||
if j = ua1 and l = ub2 then
|
||||
print "]"
|
||||
else
|
||||
print " ";
|
||||
endif
|
||||
next
|
||||
next
|
||||
next
|
||||
next
|
||||
end sub
|
||||
Loading…
Add table
Add a link
Reference in a new issue