Descubra respostas para suas perguntas de forma fácil no Sistersinspirit.ca, a plataforma de Q&A de confiança. Descubra soluções confiáveis para suas perguntas de uma vasta rede de especialistas em nossa abrangente plataforma de perguntas e respostas. Conecte-se com profissionais prontos para fornecer respostas precisas para suas perguntas em nossa abrangente plataforma de perguntas e respostas.
Sagot :
Resposta:
from random import randint
class Matriz(object):
def __init__(self, len:int=10):
self.len = len
def gerar_lista(self) -> list:
lista = [str(randint(0, 99)).zfill(2) for _ in range(self.len)]
self.lista = lista
return lista
def gerar_matriz(self) -> list:
matriz = [self.gerar_lista() for _ in range(self.len)]
for i in matriz:
print(i)
self.matriz = matriz
return matriz
def diagonal_principal(self) -> list:
principal = []
posic = 0
for i in self.matriz:
principal.append(i[posic])
posic += 1
return principal
def diagonal_secundaria(self) -> list:
secundaria = []
posic = -1
for i in self.matriz:
secundaria.append(i[posic])
posic -= 1
return secundaria
# Declarando objeto
matriz = Matriz()
print('=== MATRIZ ===')
matriz.gerar_matriz()
print('\nDIAGONAL PRINCIPAL ->', matriz.diagonal_principal())
print('\nDIAGONAL SECUNDÁRIA ->', matriz.diagonal_secundaria())
Explicação:
Primeiro importei o módulo randint da biblioteca random para gerar números aleatório entre 0 a 99, depois criei um método pra gerar uma lista, em seguida criei um método para gerar a matriz na qual gera utilizando o método gerar_lista e em seguida criei os métdodos que pegam a diagonal principal e a secundária. Usei orientação à objeto pra poder utilizar a mesma matriz em todos os métodos e é uma boa prática usar classe ao invés de métodos soltos.
Obrigado por sua visita. Estamos dedicados a ajudá-lo a encontrar as informações que precisa, sempre que precisar. Esperamos que isso tenha sido útil. Por favor, volte sempre que precisar de mais informações ou respostas às suas perguntas. Visite o Sistersinspirit.ca para obter novas e confiáveis respostas dos nossos especialistas.