Stack Overflow em Português Asked by Monica da Silva Vasconcelos on December 20, 2021
Alguém pode me ajudar a escrever a função “dimensoes(matriz)” que receba uma matriz como parâmetro e imprima as dimensões da matriz recebida, no formato iXj?
def crie_matriz(n_linhas, n_colunas, valor):
matriz = []
for i in range(n_linhas):
linha = []
for j in range(n_colunas):
linha.append(valor)
matriz.append(linha)
for n in matriz:
print(''.join(map(str,matriz)))
return matriz
a = crie_matriz(2,3)
print(a)
O código acima que fiz imprime a saída, mas a questão pede para imprimir a dimensão conforme o exemplo abaixo:
minha_matriz = [[1], [2], [3]]
dimensoes(minha_matriz)
3X1
minha_matriz = [[1, 2, 3], [4, 5, 6]]
dimensoes(minha_matriz)
2X3
Olha eu fiz desta forma, não é a melhor, porém, funcional:`
def dimensoes(matriz):
colunas = 0
linhas = 0
qtd_colunas = 0
a = ''
for i in range(len(matriz)):
linhas = linhas + 1 # soma a qtd de linhas
colunas = matriz[i] # Armazena os itens de cada linha
for w in colunas: # Ira interar a qtd de itens da ->ÚLTIMA<- lista dentro da matriz.
qtd_colunas = qtd_colunas + 1
a = print('{}X{}'.format(linhas, qtd_colunas))
return a
Answered by Douglas Rodrigues on December 20, 2021
pode usar a biblioteca numpy
, que ja vem com o método de retornar as dimensões da matriz/array
ex:
import numpy as np
np.array([[0, 1, 2],
[3, 4, 5]]).shape
imprime (2,3)
que quando armazenado em uma variavel vc sempre pode chamar .shape
ex:
import numpy as np
x = np.array([[0, 1, 2],
[3, 4, 5]])
print(x.shape)
ainda se quiser pegar a transposta, ex:
print(x.T)
imprime:
array([[0, 3],
[1, 4],
[2, 5]])
boa diversão!
Answered by rodgomesc on December 20, 2021
O código ficaria assim:
def dimensoes(matriz):
tam_matriz = (len(matriz), len(matriz[0]))
print('{}X{}'.format(tam_matriz[0], tam_matriz[1]))
Se a questão pede para imprimir, tem que usar o comando 'print', se pede para retornar ou devolver, use o comando 'return'
Answered by Eduardo Oliveira on December 20, 2021
Podes fazer o seguinte:
tam_matriz = (len(minha_matriz), len(minha_matriz[0]))
Isto vai dar um tuple, neste caso: (2, 3)
Podes imprimir assim:
print('{} x {}'.format(tam_matriz[0], tam_matriz[1]))
Ou com uma função:
def dimensoes(m):
return (len(m), len(m[0]))
print(dimensoes(minha_matriz)) # (2, 3)
Answered by Miguel on December 20, 2021
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP