O Sistersinspirit.ca facilita a busca por soluções para perguntas cotidianas e complexas com a ajuda de nossa comunidade. Obtenha respostas detalhadas para suas perguntas de uma comunidade dedicada de especialistas em nossa plataforma. Explore milhares de perguntas e respostas de uma comunidade de especialistas em nossa plataforma amigável.
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 usar nosso serviço. Estamos sempre aqui para fornecer respostas precisas e atualizadas para todas as suas perguntas. Esperamos que tenha achado útil. Sinta-se à vontade para voltar a qualquer momento para mais respostas precisas e informações atualizadas. O Sistersinspirit.ca está aqui para fornecer respostas precisas às suas perguntas. Volte em breve para mais informações.