Guião laboratorial n.º 0 – exercício 4

“Desenvolva uma função que descubra qual o elemento que surge mais vezes num vetor de inteiros. A função recebe como argumentos o nome e a dimensão do vetor. Devolve como resultado o elemento mais comum do vetor (i.e., o que surge mais vezes). Se existirem vários elementos mais comuns, a função deve devolver o maior deles. ”

#include <stdio.h>
#include <stdlib.h>

#define TAM 10

int funcao1(int v[TAM], int t){
int i,j,conta=0;
//para guardar a informação acerca das repetições
int aux[TAM];
int maior=0;
int omaisC=aux[0];
int posicao_m=0;

for(i=0; i<TAM; i++){
    for(j=0; j<TAM; j++){
    if(v[i]==v[j]){
        conta++;
    }
    }
    aux[i]=conta;
    printf("%d ",  aux[i]);
    conta=0;
}

for(i=0; i<TAM; i++){
    if(aux[i]>maior)
    {
    maior=aux[i];
    posicao_m=i;

    }
}
    printf("\no maior vem na posicao do vetor %d ",  posicao_m);
    omaisC=v[posicao_m];

return omaisC;
}

int main()
{
    int vector[TAM]={1,1,12,12,4,10,10,10,9,9};
    printf("\a \no mais comum vem: %d", funcao1(vector, TAM));
    return 0;
}


Tags : ,