Ejemplo n.º 1
0
	def test_calculate_large(self):
		A = [[7, 2, 5, -10, -5, -10, 6, 2, 1, 2, 1, 1, 3, -9, 2],
			[-8, 2, -10, 4, 0, 3, -9, 3, 4, -1, -3, -6, 2, 9, -4],
			[7, -4, 0, -10, 4, -2, -7, -9, 5, 3, -8, -3, -9, -8, -6],
			[-5, 10, 2, -6, -3, 9, 8, 4, -4, -7, -10, -6, 6, 1, -4],
			[-3, -7, 6, 10, -5, -4, -2, -3, 3, 3, 5, -5, -6, -9, 7],
			[5, -1, 9, -1, -7, -4, 6, -7, 3, -9, -8, 4, -5, -5, 5],
			[-7, 4, -10, 4, -10, -4, 0, -8, 5, -6, -7, -4, -2, -6, 7],
			[-4, -10, 4, 2, -4, -1, -6, 6, -1, -3, -10, 6, -8, 0, 9],
			[-6, -9, -8, -10, -2, -5, 6, 0, 5, -10, -4, -1, 10, 0, -4],
			[-9, 0, -10, -2, -10, -4, 9, -9, 5, 10, 2, 2, 4, -9, 8],
			[5, -1, 1, 0, -8, -6, -7, 0, -4, 9, 0, 2, -7, -3, -3],
			[-10, -3, -7, -5, 7, 1, -2, 0, 8, 1, -8, 5, 2, 4, -10],
			[-1, -4, -1, 10, 8, 8, -7, 10, 6, 7, 3, -7, -1, -10, 8],
			[0, 4, 2, 3, -4, 9, -10, 6, 7, -8, -2, -8, 6, 1, -7],
			[-4, -9, 0, 2, 2, -1, -3, -9, 2, 9, 1, 1, -1, 6, -10]
		]
		B = [
			[2, 3, -8, 3, -3, 1, 8, -9, 3, -7, 8, 2, -2, -10, -6],
			[4, -2, -5, 2, -7, -6, -9, 6, 8, 2, 0, 4, -7, 9, 0],
			[4, 5, 7, 6, -1, -7, 5, 9, 5, 3, -8, 10, -4, 2, 5],
			[10, 0, -1, -1, 8, -8, -3, -3, -8, 10, -9, 0, -10, 4, 9],
			[3, 1, -1, 6, 9, -1, 5, -10, -3, -9, -10, 0, -10, 9, 4],
			[-2, 10, 4, -8, 3, 4, 6, -1, -7, -5, 3, 4, 9, 9, -9],
			[7, 1, -5, 1, 7, 0, -9, -1, -2, 0, -9, -3, -3, 9, -7],
			[-7, -8, 8, -8, 9, 10, -4, 6, 8, 8, 1, -9, -1, 2, -1],
			[-10, -3, 7, -8, -5, -9, 4, 5, -5, 3, -5, 4, -4, -5, 6],
			[-5, -1, -3, 3, -9, -6, 0, -4, -4, 5, 6, -1, 9, 6, 6],
			[-8, -7, 8, -9, -7, 2, -6, -5, -6, -3, 1, 5, -1, 7, 9],
			[2, -8, 10, -5, -5, 2, 5, 5, 8, 0, 8, 9, 10, 5, 5],
			[5, -7, -6, -10, -3, -7, -1, 10, 2, 5, 1, 10, 10, 8, 7],
			[4, 7, -3, -6, -4, 9, 0, -3, -10, 0, 9, 6, -10, 5, 2],
			[-4, -8, 7, -7, 0, -9, -10, 7, -6, -4, 5, -1, 3, 3, 10],
		]
		expected = [[-80,-193,-28,99,-143,-112,-74,158,304,-2,22,-14,141,-155,-26],
			[-59,58,-59,-165,23,115,-15,-20,-177,121,59,-70,-111,18,20],
			[-132,195,-107,364,-95,-31,351,-212,98,-222,4,-90,43,-417,-218],
			[172,172,-173,2,148,97,-103,235,171,44,-98,-17,16,173,-349],
			[-99,-72,180,57,36,-271,-87,16,-153,117,-193,-89,-35,-145,237],
			[132,61,38,166,16,-159,47,170,152,-50,-96,57,-36,-259,-104],
			[2,-77,-72,-9,-11,-213,-222,152,-54,81,-53,-150,12,-195,-13],
			[-65,-28,279,-4,163,66,80,159,46,65,77,-134,79,-211,41],
			[-38,-93,-66,-141,86,137,-2,129,54,-14,-50,-61,136,-136,-140],
			[-134,-256,-19,-112,-214,-297,-301,146,-104,98,40,-64,366,69,136],
			[-87,-14,-14,170,-186,23,72,-77,126,78,198,-79,108,-242,1],
			[-50,41,3,-29,30,122,189,-6,-5,28,-42,-2,49,34,-58],
			[-243,-116,217,-135,213,-185,-4,-47,-188,71,-165,-174,17,77,213],
			[-56,116,18,-176,38,33,129,155,24,128,-49,75,-70,-86,-86],
			[14,166,-65,98,-120,21,218,-218,-211,28,1,91,22,-21,74]
		]
		C = multiply(A, B)
		self.assertEquals(C, expected)

		pass
Ejemplo n.º 2
0
	def test_calculate_3by3(self):
		A = [
			[1, 2, 3],
			[4, 5, 6],
			[7, 8, 9]
		]

		B = [
			[ 2,  4,  6],
			[ 8, 10, 12],
			[14, 16, 18]
		]

		C = multiply(A, B)
		self.assertEquals(C, [
			[60, 72, 84],
			[132, 162, 192],
			[204, 252, 300]
		])
Ejemplo n.º 3
0
	def test_calculate_4by4(self):
		A = [
			[11, 12, 13, 14],
			[21, 22, 23, 24],
			[31, 32, 33, 34],
			[41, 42, 43, 44]
		]

		B = [
			[11, 12, 13, 14],
			[21, 22, 23, 24],
			[31, 32, 33, 34],
			[41, 42, 43, 44]
		]

		C = multiply(A, B)
		self.assertEquals(C, [
			[1350, 1400, 1450, 1500],
			[2390, 2480, 2570, 2660],
			[3430, 3560, 3690, 3820],
			[4470, 4640, 4810, 4980],
		])
Ejemplo n.º 4
0
	def test_calculate_2by2(self):
		A = [[-1, 1], [1, -1]]
		B = [[2, 4], [6, 8]]

		C = multiply(A, B)
		self.assertEquals(C, [[4, 4], [-4, -4]])