Ola. Gostaria de saber que tem alguma função pronta para contar o numero de vezes de um determinado valor.
Por exemplo : eu tenho uma lista zerada de 10 elementos, tipo lista=[0,0,0,0,0,0,0,0,0,0]
Se eu colocar no primeiro elemento da lista o 1, eu gostaria que me retornasse que o 1 aparece 1 vez na lista : lista=[1,0,0,0,0,0,0,0,0,0]
Se eu colocar outro um em outra posição gostaria de retornar que foram encontradas 2 ocorrencias do 1 : lista=[1,0,0,0,1,0,0,0,5,0], mesmo tendo um 5 na lista, porque o 1 é o que mais aparece.
Em resumo gostaria de saber que o 1 é o numero que mais aparece na lista, com exceção do 0, mesmo tendo outros numeros nela.
Sei que da para fazer com for para ir andando no elementos da lista e comparando e contando, mas pelo que me lembro o C tem uma função que conta o numero de ocorrencias de um numero em uma lista, não lembro qual é ela, algume sabe ?
Pode ser que tambem que tenha uma função que diga qual é o numero que tem mais ocorrencias em uma lista.
Alguem sabe ?
Ou sei la, pode-se fazer isso em poucas linhas de codigo, de forma bem rapida ?
Valeu,
Jota
Tags:
Pelo visto ninguem sabe ou não existe a tal função...
Ja ajudaria se me disserem qual é a função do c padrao que retorna o numero de ocorrencias de um numero em uma lista e acho que consigo implementar o resto, sei que existe, mas não lembro do nome e não consigo achar ela.
Tks,
Jota
Colega, tem que pesquisar e estudar....
http://www.ime.usp.br/~pf/algoritmos/aulas/lista.html
http://www.cprogramming.com/tutorial/c/lesson15.html
http://www.exforsys.com/tutorials/c-language/c-linked-lists.html
http://www.programmingsimplified.com/c/source-code/c-program-linear...
Obrigado pela ajuda.
Mas depois me dei conta que não era em C que tinha um comando pronto desses, no C, tem fazer um for para ir andando em toda lista e comparando o valor da lista[indice]=valor pretendido e se for igual, retornar o indice para saber a posição que se encontra o valor pretendido na lista.
Não existe uma função direta para isso...
Abraços,
Jota
Na Biblioteca Juriti do microcontrolador ZR16 existe uma função chamada Item_de_memoria()
que se segue:
int Item_de_Memoria(unsigned char t_item)
{
unsigned char pmem,tipo_m,cont_m;
cont_m = 0;
for (pmem = 0;pmem<255;pmem++)
{
tipo_m = ee_lista[pmem];
if (tipo_m==t_item){cont_m++;}
}
return(cont_m);
}
//lembre-se que t_item é o dado pesquisado.Essa função retorna quantidades de ocorrencias de um item em ee_lista[]
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por