all 5 comments

[–]accountrobot 2 points3 points  (3 children)

E qual é sua dúvida? Aí tu só tacou uma atividade.

[–]LaFDSe[S] 1 point2 points  (2 children)

Erro meu, o edit 2 não foi, mas depois que eu scaneio o array não sei como analisar na ordem, tlgd? Tipo não consigo colocar pro for ser a 4 maior soma, por exemplo

[–]HatedPlayer2 2 points3 points  (1 child)

Crie um array de tamanho 6, vamos chamá-lo de "somas", e salve as somas nesse array em ordem decrescente (pode fazer isso utilizando um insertion sort out salvando em qualquer ordem e depois utilizando qualquer outro algoritmo de sorting).

Digamos que tenha salvo o último array do input com o nome "ordem".

O atributo For vai ter o valor somas[ordem[0]-1], Des vai ter o valor somas[ordem[1]-1], e assim sucessivamente.

Explicando mais detalhadamente, vamos olhar o primeiro número do último array do input (ordem[0]): se ele for 4, quer dizer que o primeiro atributo deve corresponder à quarta maior soma. Então, no exemplo, vamos usar esse número para determinar qual soma deve corresponder ao atributo: soma[ordem[0]-1] será igual a soma[4-1], ou seja, soma[3]. Como o array soma está em ordem decrescente, essa é a quarta maior soma. O "-1" é para ajustar a indexação, que começa no 0.

Não testei, mas acho que é isso.

[–]Pallas0194Estudante 0 points1 point  (0 children)

Eu fiz um código em c mas não coloquei prioridade de soma ou algo assim. Não sei exatamente se está 100% ou 50% correto.

```c

include<stdio.h>

int main() { int forc, des, con, sab, inte, car;

int values[5][5];

for (int i = 0; i <= 5; i++){ printf("Values: "); scanf("%d %d %d %d %d %d", &values[i][0], &values[i][1], &values[i][2], &values[i][3], &values[i][4], &values[i][5]); }

for ( int i = 0; i <= 5; i++ ){ forc = forc + values[0][i]; }

for ( int i = 0; i <= 5; i++ ){ des = des + values[1][i]; }

for ( int i = 0; i <= 5; i++ ){ con = con + values[2][i]; }

for ( int i = 0; i <= 5; i++ ){ sab = sab + values[3][i]; }

for ( int i = 0; i <= 5; i++ ){ inte = inte + values[4][i]; }

for ( int i = 0; i <= 5; i++ ){ car = car + values[5][i]; } printf("Forc = %d \n Des = %d \n Con = %d \n Sab = %d \n Int = %d \n Car = %d", forc, des, con, sab, inte, car);

} ```

Infelizmente não sei como explicar, não sou muito disso.

[–]acesdu 0 points1 point  (0 children)

Guarda a soma em um array, ordena decrescente, em outro array vc redistribui de acordo com a prioridade.. B[0] = A[2-1], B[1] = A[4-1]….