Alguém poderia me ajudar nessa questão?

Matemática Ensino Superior Algoritmos e Programação Algoritmos Complexidade de Algoritmos

 1) Dizemos que uma matriz quadrada de elementos inteiros é Trinarqui se as somas dos elementos de cada coluna, a soma dos elementos da diagonal principal e a soma dos elementos da diagonal secundária são todas diferentes. Fazer um algoritmo para resolver o problema: Dado N e uma matriz A de elementos reais e de ordem N, verificar se A é Trinarqui ou não.

 

Utilizar a seguinte estratégia de solução: criar um vetor X de N+2 elementos que armazenará em X(N+1) o resultado da soma dos elementos da diagonal secundária; em X(N+2) o resultado da soma dos elementos da diagonal principal e em cada X(i), i=1,2,3,4,...,N, as somas dos elementos de cada coluna da matriz A. A verificação se todos os elementos de X são distintos entre si indicará se a matriz é Trinarqui ou não. Manter os nomes das variáveis especificados na questão.

Foto de Pedro C.
Pedro perguntou há 3 anos

Sabe a resposta?

Ganhe 10 pts por resposta de qualidade
Responder dúvida
1 resposta
1
votos
1 usuário votou nessa resposta como útil.
Professor Raul O.
Identidade verificada
  • CPF verificado
  • E-mail verificado
Respondeu há 3 anos

Olá Pedro, acredito que tenho a solução para a sua dúvida. 

Como você não especificou nenhuma linguagem, vou esboçar uma solução em Python.

Façamos uma função que retorna True caso a matrix A seja Trinarqui - caso contrário, retorna False. 

Primeiro, iniciamos uma variável - por exemplo, somas - com um vetor que conterá as somas das colunas, a soma da diagonal principal e a soma da diagonal secundária.

Em seguida, calculamos as somas das colunas. Vamos precisar de repetições encaixadas: Na exterior, iteramos sobre as colunas da matriz (j de 0 até n - 1). Iniciamos dentro desta repetição uma váriavel - soma_coluna - que conterá a soma da coluna sobre a qual estamos iterando. No loop interior, iteramos sobre as linhas da matriz (i de 0 até n - 1), somando o valor da entrada da linha i e coluna j na variável soma_coluna. Após esse loop interior, adicionamos ao vetor somas o valor de soma_coluna.

Agora temos no vetor 'somas' as somas de todas as colunas. Vamos calcular a soma das diagonais. Iniciamos duas variáveis, uma para a soma da diagonal principal - soma_dpri - e outra para a soma da diagonal secundária - soma_dsec. Fazemos uma repetição, iterando apenas sobre as linhas (i de 0 até n - 1, pois a matriz é quadrada), e somamos na variável soma_dpri a entrada da linha i e coluna i e na variável soma_dsec a entrada da linha i e coluna n - i. Após o loop, adicionamos ao vetor os valores das váriaveis soma_dsec e soma_dpri, nesta ordem.

Finalmente, para checar se temos valores repetidos no vetor somas, vamos iterar sobre ele (i de 0 a n + 1). Para cada ponto i, selecionamos o valor somas[i] e montamos um novo vetor 'v' juntando duas fatias de somas - uma com todos os elementos antes de i e outra com todos os elementos após i. Se somas[i] estiver presente em v, retorne False.

Se o programa sair do loop sem retornar False, retorne True.

É isso, espero ter ajudado. Não sei se é bem o que você queria; também posso te mandar o código pronto, se você quiser.

Envie uma dúvida gratuitamente

Envie sua primeira dúvida gratuitamente aqui no Tira-dúvidas Profes. Nossos professores particulares estão aqui para te ajudar.

Professores particulares de Matemática

+ Ver todos
Encontre professor particular para te ajudar nos estudos
R$ 70 / h
Raul O.
Santo André / SP
Raul O.
Identidade verificada
  • CPF verificado
  • E-mail verificado
1ª hora grátis
Matemática para Ensino Médio Álgebra Números Complexos
Graduação: Bacharelado em Matemática (Instituto de Matemática e Estatística da USP (IME-USP))
Professor de matemática e programação para alunos do ensino médio, vestibulandos, concurseiros e universitários. Graduando em matemática pelo ime-usp.
R$ 70 / h
Marcos T.
Iguaba Grande / RJ
Marcos T.
5,0 (85 avaliações)
Horas de aulas particulares ministradas 866 horas de aula
Identidade verificada
  • CPF verificado
  • E-mail verificado
Matrizes Matemática para o 8º ano Matemática para USP
Graduação: Engenharia Civil (UNIESP)
Mais de 2000 horas de aulas on-line ministradas. Inúmeras aprovações em concursos militares e vestibulares. Meu objetivo é seu entendimento.
R$ 55 / h
Marcos F.
Rio de Janeiro / RJ
Marcos F.
4,9 (1.329 avaliações)
Horas de aulas particulares ministradas 1.677 horas de aula
Tarefas resolvidas 1.576 tarefas resolvidas
Identidade verificada
  • CPF verificado
  • E-mail verificado
1ª hora grátis
Números Complexos Pré-Militar Determinantes
Graduação: Intercâmbio Internacional e Graduação Sanduíche (Miami University)
Professor de matemática, física e química com 10 anos de experiência! Vem aprender comigo!