Jump to content

preciso de ajuda em uma questão de python


Estudante de ti

Postagens Recomendadas

o enunciado da questão é:
Faça um programa que crie duas matrizes A11×17 e B11×17. Depois atribua valores as duas matrizes e em seguida encontre a matriz C, tal que, C = A × B^t . OBS: B^t é a matriz transposta de B. OBS2: A única biblioteca que você pode utilizar é o import Random.

meu código ficou:

 

import random

# Criar matrizes A e B com zeros
A = [[0 for i in range(17)] for j in range(11)]
B = [[0 for i in range(17)] for j in range(11)]

# Atribuir valores aleatórios às matrizes A e B
for i in range(11):
    for j in range(17):
        A[i][j] = random.randint(0, 100)
        B[i][j] = random.randint(0, 100)

# Calcular a matriz transposta de B
B_transposta = [[B[j][i] for j in range(len(B))] for i in range(len(B[0]))]

# Calcular a matriz C como o produto de A e B transposta
C = []
for linha_A in A:
    linha_C = []
    for coluna_B in B_transposta:
        soma = 0
        for k in range(len(linha_A)):
            soma += linha_A[k] * coluna_B[k]
        linha_C.append(soma)
    C.append(linha_C)

# Imprimir as matrizes A, B e C
print("Matriz A:")
for linha in A:
    print(linha)

print("\nMatriz B:")
for linha in B:
    print(linha)

print("\nMatriz C:")
for linha in 😄
    print(linha)


mas ele tá dando erro

soma += linha_A[k] * coluna_B[k]
IndexError: list index out of range

alguém pode me ajudar?

Link to comment
Compartilhe em outros sites

Crie uma conta ou entre para comentar 😀

Você precisa ser um membro para deixar um comentário.

Crie a sua conta

Participe da nossa comunidade, crie sua conta.
É bem rápido!

Criar minha conta agora

Entrar

Você já tem uma conta?
Faça o login agora.

Entrar agora


×
×
  • Create New...