import numpy as np m = 4 n = 3 k = 5 C = np.matrix( np.random.random( (m, n) ) ) print( 'C = ' ) print( C ) Cold = np.matrix( np.zeros( (m,n ) ) ) Cold = np.matrix( np.copy( C ) ) # an alternative way of doing a "hard" copy, in this case of a matrix A = np.matrix( np.random.random( (m, k) ) ) print( 'A = ' ) print( A ) B = np.matrix( np.random.random( (k, n) ) ) print( 'B = ' ) print( B ) # Your code here... C = np.matrix( np.copy( Cold ) ) # restore C Gemm_nn_unb_var1( A, B, C ) print( 'C - ( Cold + A * B )' ) print( C - ( Cold + A * B ) )