Desafio
Você recebe três números inteiros como entrada - min_value, max_value, sample_size
, que podem ser passados para sua resposta como matriz ou vários parâmetros.
Sua tarefa é produzir um diagrama em qualquer formato conveniente , que mostre a frequência dos números no (min_value, max_value)
intervalo, aparecendo quando um número aleatório no (min_value, max_value)
intervalo é escolhido sample_size
vezes. A sequência numérica aleatória deve ser gerada dentro da sua resposta.
Com grandes faixas e tamanhos de amostra, você pode alterar as etapas que seu diagrama usa, desde que a representação permaneça precisa.
Exemplo
Com [1, 5, 10]
como entrada:
o o o x o
x o x x x
x x x x x
1 2 3 4 5
Com [1, 100, 15]
como entrada (nas etapas de 10, então 00 mostra 1-9, 10 mostra 10-19, etc.):
xx oo oo xx oo xx oo oo oo oo
xx oo oo xx oo xx xx oo oo oo
xx xx oo xx xx xx xx xx xx oo
00 10 20 30 40 50 60 70 80 90
Pontuação
Isso é código-golfe , então o código mais curto em bytes vence.
[1,5,10]
exemplo, a altura pode ser10
? Então coluna 4 ficaria assim (verticalmente de cima para baixo em vez de horizontalmente da esquerda para a direita):oooooooxxx4
.b-a
? Isso é um formato bastante conveniente ...a...b
, o diagrama possui uma única bandeja que cobre todo o intervalo, resultando em uma única barra com altura igual ao número de amostras.Respostas:
Gelatina , 13 bytes
Usa um formato muito conveniente:
0
como pixels de distribuição (como osx
) e1
como pixels de fundo (como oso
)Experimente online!
Nota: Se a entrada não tivesse que ser uma matriz, seriam 11 bytes, tendo dois argumentos,
[from, to]
esampleSize
apenasr/;"xẊĠ>ʋ¥G
.Eu acho que isso pode levar a permissão de formatação conveniente um pouco longe demais para 4 bytes:
Ṗ;1K
Isso está usando a idéia (que deve ser abordada) apresentada por Giuseppe nos comentários com uma única caixa identificada
from
eto
separada por um espaço, outro espaço representando o eixo e um único1
representando a altura de 100%.... ou mesmo apenas
Ṗ1
por 2 bytes!fonte
Oitava ,
3432 bytesNão funciona no TIO, mas funciona no Octave-online.net .
Ele cria um histograma (gráfico de barras) parecido com este:
Eu diria que conta como "Qualquer formato conveniente".
Se compartimentos diferentes de zero devem ser mostrados, isso pode ser resolvido em 38 bytes:
fonte
f(1,5,1)
mostrariam o comportamento, por exemplo).R , 36 bytes
Experimente online!
Suspiro. Uma parcela.
A proibição de existir para estudantes universitários do segundo ano que recebem Introdução à Estatística para [Esta área específica de estudo] de algum professor que não sabe do que está falando, mas ainda acha que os gráficos de base são uma boa ideia, porque ainda está na 14ª edição do livro que eles usam desde a quarta edição, publicada em 1983.
fonte
Carvão , 25 bytes
Experimente online! Explicação:
Crie um intervalo inclusivo da distribuição.
Prove o intervalo o número desejado de vezes.
Conte e imprima o número de cada intervalo na amostra.
Imprima as etiquetas.
fonte
Python 2 , 115 bytes
Experimente online!
Python 2 , 164 bytes
saída baseada em coluna.
Experimente online!
fonte
Java 11,
184168 bytesExperimente online. (NOTA:
String.repeat(int)
é emulado comorepeat(String,int)
para a mesma contagem de bytes, porque o Java 11 ainda não está no TIO.)Explicação:
fonte
R , 52 bytes
Experimente online!
Devolve uma
table
das frequências comnames
igual aos intervalos de meia-aberto seleccionados porcut
, assim(0,1]
,(1,2]
,(2,3]
, e assim por diante. Não faz nenhum esforço para selecionar uma distribuição mais razoável.fonte
function(a,b,n)hist(sample(a:b,n,T))
atenderia aos requisitos da pergunta?Ruby,
135 bytes, 117 bytesUngolfed:
fonte
Perl 5 , 85 bytes
Experimente online!
Produz uma saída semelhante ao @Neil 's resposta carvão .
fonte
JavaScript, 239
Sinto muito por isso, mas as variáveis foram nomeadas apenas willy-nilly. Enfim, a pergunta dizia qualquer formato conveniente , então essa função retorna um gráfico lateral
fonte
Japonês
-R
, 14 bytesRecebe entrada na ordem max, min, tamanho. Produz o gráfico horizontalmente.
Tente
Explicação
fonte
Pitão, 19 bytes
Experimente aqui
Explicação
fonte