Ajuda em vetor

Seguinte, tenho uma matriz com 20 linhas e 2 colunas, e nelas tenho números de 0 a 256
preciso achar os 4 maiores numeros da matriz, estou usando isso:

for (int i = 0; i < 20; i++) { if (matriz20[i][2] > maior) { maior = matriz20[i][2]; } }

mas ela zera quase todas as posições e não acha todos os maiores… alguém me ajuda?

nota: a coluna 2 "[i][2]"é onde estão os numeros

[quote=JuniorMaia]Seguinte, tenho uma matriz com 20 linhas e 2 colunas, e nelas tenho números de 0 a 256
preciso achar os 4 maiores numeros da matriz, estou usando isso:

for (int i = 0; i < 20; i++) { if (matriz20[i][2] > maior) { maior = matriz20[i][2]; } }
Como você deseja os 4 maiores você precisa de 4 repetições:
Pra isso você precisa de um algorítimo de verificação que ele percorre seu vetor (19+18+17+16) vezes. Exemplo:

Na primeira vez ele verifica o maior dentro os 20. Digamos que ele pegue o primeiro elemento e diga que ele é o maior, depois ele vai verificando e comparando com os 19 restantes. feito isso ele coloca como maior.
Depois disso ele vai para o proximo elemento, lembrando que ele retira do vetor o elemento anterior considerado o maior. O nome desse algoritmo é o selection sorte, em que ele vai ordenar os elementos. Dai você pode ordenar do maior para o menor e pegar os 4 primeiros.BOm caro amigo como sempre faço vídeo pro pessoal aí, então vou fazer um vídeo pra você meu caro e espero que você goste! Ainda hoje estarei enviando para o youtube e disponibilizando o link!

Abraço!

http://www.youtube.com/watch?v=2BraSA_coYM

COmo prometido! Bons estudos! Qualquer dúvida estamos aí!

Fala meu amigo jacobis, muito bom seu video, agradeço mesmo velho, talvez eu me expressei errado, olha o meu código, ali eu postei apenas a metade para o entendimento de todos, segue meu código completo:

int maior = -1; //inicializo uma variavel em -1 para começar a busca do maior
        for (int j = 0; j < 4; j++) { //faço 4 vezes para escolher os 4 reprodutores
            for (int i = 0; i < 20; i++) { //percorro a matriz pegando os decimais
                if (matriz20[i][2] > maior) { //verifico se o numero da posição i é maior que a variavel
                    maior = matriz20[i][2]; //variavel recebe o numero decimal
                    reprodutor[j][0] = i; //matriz na posição 0 recebe a posição do binário na matriz de 20
                    reprodutor[j][1] = maior; //matriz na posição 1 recebe o decimal do reprodutor
                    reprodutor[j][2] = matriz20[i][1]; //matriz na posição 2 recebe binário do reprodutor
                    reprodutor[j][3] = matriz20[i][0]; //passo pra matriz reprodutor a posição do binário na matriz de 100
                    // matriz20[i][2] = 0; //zero a posição no vetor para que o numero não seja mais o maior 

                }
            }