Uma ajuda nesse problema!

2 respostas
llNoNickll

Tenho o seguinte problema: :shock:
Implemente o código de uma função de que calcule o histograma.O histograma consiste no número de ocorrências dos valores possíveis.Nesse exemplo, consideremos que os valores sejam do lançamento de um dado, de 1 a 6 (valores possíveis).Por exemplo, pode-se ter a seguinte seqüência de números x={1,5,2,1,4,2,4,1}. Nesse caso, o histograma é: h={3,2,0,2,1,0}, pois o primeiro valor (igual a “1”) ocorreu 3 vezes em x, o “2” ocorreu 2 vezes,o “3” não ocorreu,etc.Deseja-se que a função histograma tenha a seguinte assinatura:[color=darkblue]public static int[] histograma(int[]x);[/color]

Bem,gostaria q alguém desse uma   :idea:  d c/ resolver esse problema :?

Ainda ñ consegui encontrar uma saída <img src="https://cdn.jsdelivr.net/gh/twitter/twemoji@14/assets/72x72/c.pngry.png?v=9" title=":cry:" class="emoji" alt=":cry:">

Apenas sei q um exemplo dessa função seria:

[color=darkblue]public static void[/color] [b]main<a>/b</a>{

[color=darkblue]int[/color] x[] = {[color=red]1,5,2,1,4,2,4,1[/color]};

[color=darkblue]int[/color] h[] = [b]histograma<a>/b</a>;

}

2 Respostas

ViniGodoy
  1. Crie um vetor h com 6 posições, inicializado com zero;
  2. Para cada elemento do vetor recebido, some um na posição do vetor h correspondente ao valor daquele elemento menos um.
    Por exemplo, se o valor do elemento for 3, faça h[2]=h[2]+1;
  3. Retorne o vetor h.
llNoNickll

:smiley:
Vlw msm!Vou tentar implementar sua idéia…
Ia tentar desenvolver por várias cadeias de if-else alinhados,mas sua solução é bem mais eficiente e menos complexa que a minha… :wink:

Criado 27 de março de 2007
Ultima resposta 28 de mar. de 2007
Respostas 2
Participantes 2