• Matéria: Informática
  • Autor: EvangelineSamos
  • Perguntado 5 anos atrás

Python: Faça um programa que leia uma matriz A de tamanho 2 x 2 e calcule B = A^2

Respostas

respondido por: GeBEfte
2

O programa a seguir não conta com uma validação de dados ou tratamento de exceções/erros, assim é preciso ter cuidado ao digitar as informações solicitadas.

Como não é o objetivo do exercício, vou considerar que se tenha conhecimento sobre matrizes e, mais especificamente, multiplicação de matrizes.

Vamos ao código e, posteriormente, comento um pouco mais.

[Python 3.8]

\sf a~ =~ list()\\b ~=~ list()\\linha ~=~ list()\\\\for ~line~ in~ range(2):\\~~~~  for~ column~ in~ range(2):\\

\small\begin{array}{ccc}.&&\sf linha.append(float(inpu t(f'Digite~ o~ valor~ do~ elemento~ a\{line+1\}\{column+1\}: ')))\end{array}\sf ~~~~\!a.append(linha.copy())\\~~~~linha.clear()\\\\for~ line~ in~ range(2):\\~~~~  for~ column~ in~ range(2):\\ ~~~~~~~~   m~ =~ 0\\ ~~~~~~~~   for~ i~ in~ range(2):\\  ~~~~~~~~~~~~    m~ +=~ a[line][i]~ *~ a[i][column]\\~~~~~~~~    linha.append(m)\\ ~~~~ b.append(linha.copy())\\ ~~~~ linha.clear()\\\\print(b)

Comentários

--> Utilizamos as listas "a" e "b" para representar, respectivamente, as matrizes A e B do exercício. A lista "linha" é utilizada para guardar linhas das matrizes de forma auxiliar.

--> Na primeira estrutura de repetição com dois "for" aninhados, é solicitado que o usuário digite os elementos da matriz A. Note que a matriz é lida linha a linha, ou seja, ocorre a leitura de todos elementos de uma linha (guardados na lista "linha"), copia-se essa linha para a lista "b" e, então, passamos para a leitura da próxima linha.

--> Para determinar A², ou seja, o produto da matriz A por ela mesma, vamos utilizar também estruturas de repetição, sendo que a variável "m" é usada para o cálculo dos elementos da nova matriz (b). Observe que, no cálculo de cada elemento da matriz "b", as variáveis "line" e "column" utilizadas nos laços se mantém inalteradas e "i" responsável, portanto, pela variação dos elementos das matrizes que estão sendo multiplicadas (AxA).

Como exemplo, vamos ver a alteração nos valores guardados nas variáveis "line", "column", "i" e "m" durante o cálculo de b21.

-> line=1

-> column=0

-> i = 0

-> m = 0 + a[1][0] * a[0][1]

-> i = 1

-> m = 0 + a[1][0] * a[0][1] + a[1][1] * a[1][1]

\Huge{\begin{array}{c}\Delta \tt{\!\!\!\!\!\!\,\,o}\!\!\!\!\!\!\!\!\:\,\perp\end{array}}Qualquer~d\acute{u}vida,~deixe~ um~coment\acute{a}rio


EvangelineSamos: https://brainly.com.br/tarefa/40579968
https://brainly.com.br/tarefa/40578293
por favor
Perguntas similares