distromaialinux
(usa Debian)
Enviado em 01/11/2022 - 11:55h
Oi tudo bem!
Cara, pior que a solução específica eu não me lembro, mas te direi como eu chegaria lá:
Primeiro, existe uma função pronta universal em todas as programações basicamente, chamada de "Sort". Essa função é responsável por ordenar caracteres. Exemplo: 321 -> passa a ser 123
Segundo, como posso perceber é uma matriz, matriz mais comum é formada por 2 vetores e posições denominada linha e coluna. É possível percorrer as linhas e colunas com for ou com while, e comparar se um valor numa determinada posição (próximo número) é menor que o anterior, se sim, então inverta as posições. Isto é feito com o comando IF ( uma condicional ) e é preciso criar também uma variável temporária para armazenar o valor e ou posição do vetor. Assim é possível inverter as posições.
Em algumas programações orientada a objetos, já existe um atributo chamado identity que é responsável por pegar apenas a diagonal da matriz se não me engano. Mas não sei se tem no shellscript essa função.
Enfim! espero ter te ajudado a compreender um pouquinho a lógica. Boa Sorte!
Algumas Denominações para se levar em consideração:
matriz[3][3] = 3 posições em 3 linhas, 3 posições em 3 colunas
1 2 3
4 5 6
7 8 9
vetor[3] = 3 posições em uma linha apenas
24 26 30
A primeira posição sempre será = 0 ou seja: número de posições do vetor acima fica assim: 0 1 2
onde na posição 0 temos o número 24, na posição 1 temos o número 26, e na posição 2 temos o número 30.
possível solução b=24 , a=26, c=?, (a,b). por favor ordene os valores das posiçoes :
a=26
b=24
c=?
(a,b) = (26,24)
c=b -> 24
b=a -> 26
a = c - > 24
resultado final mais ou menos assim. = (a,b) = (24,26)
Sort() = Função de ordenação de caracteres
Identity() = Em algumas programações Orientadas a Objetos, Pega os números da diagonal da matriz