// rz matrix multiplication // 4 x 4 ma[16] mb[16] mc[16] // N = 4 N index(i,j) return i*4 + j mmul() i = 0 while( i < N ) j = 0 while( j < N ) x = index(i,j) k = 0 while( k < N ) mc[x] = mc[x] + (ma[index(i,k)] * mb[index(k,j)]) k = k + 1 j = j + 1 i = i + 1 tmul(i) j = 0 while( j < N ) x = index(i,j) k = 0 while( k < N ) mc[x] = mc[x] + (ma[index(i,k)] * mb[index(k,j)]) k = k + 1 j = j + 1 prm(mx) i = 0 while( i < N) j = 0 while( j < N ) print(mx[index(i,j)]) j = j + 1 print("\n") i = i + 1 initm(mx) i = 0 while( i < N ) j = 0 while( j < N ) x = index(i,j) mx[x] = x j = j + 1 i = i + 1 main() di(0) N = 4 initm(&ma) initm(&mb) prm(&ma) prm(&mb) // mmul() tmul(0) tmul(1) tmul(2) tmul(3) prm(&mc)