Como a maioria dos países que usam o euro tem o ,
separador decimal, você também deve usá-lo.
A tarefa é produzir todos os valores das moedas e notas em ordem crescente. Você também deve colocar os valores finais ,00
nos valores inteiros.
0,01 0,02 0,05 0,10 0,20 0,50 1,00 2,00 5,00 10,00 20,00 50,00 100,00 200,00 500,00
Eu aceito a saída para stdout ou uma função retornando uma matriz / lista. Se a saída for stdout, os separadores aceitáveis entre os valores são: espaço, tabulação ou nova linha.
Não haverá resposta aceita, a menos que eu encontre alguém que eu ache muito criativo.
code-golf , então eu quero saber a resposta mais curta por idioma.
Atualizar:
Leading 0
zeros não são aceitáveis. Desculpe, eu deveria deixar claro antes.
Atualização 2:
Também é aceitável uma função retornando uma string.
fonte
000,01
etc.)?Respostas:
Pure Bash, 48
Experimente online .
fonte
Japonês ,
2322 bytes-1 byte graças a @Shaggy
Retorna uma matriz de seqüências de caracteres.
Experimente online! com o
-R
sinalizador para gerar itens de matriz em linhas separadas.fonte
Python 2 , 72 bytes
Experimente online!
A expressão
5>>~x%3
mapeia os inteiros não negativos para1
,2
,5
,1
,2
,5
...Ele funciona porque
5
,2
,1
são os sucessivos-bitshifts direito de5
(0b101
→0b10
→0b1
); nós passamos por eles de trás para a frente.fonte
Carvão , 36 bytes
Experimente online! Link é a versão detalhada do código. Explicação:
fonte
SOGLOnline offline,
27262524232221 bytesExperimente aqui!
O link online não mostra zeros à direita, mas a versão offline funciona como Javas BigDecimals.
Explicação:
Para executar no interpretador offline, faça o download do repositório SOGLOnlines , acesse o compilador / intérprete, abra qualquer um dos
.pde
arquivos com Processing e , em seguida, faça o arquivo -> exportar para o seu sistema operacional (caso contrário, você não poderá fornecer argumentos para um programa de processamento: /), e, em seguida, execute o programa compilado com um argumento para o caminho do arquivo com o código. Então, stdout irá conter isso .2L¼2¹5∙īυ;{⁴Ζ.,ŗP*
para 18 bytes quase funciona, mas a quantidade zero aumenta, resultando em0,01 0,02 0,050 0,100 0,200 0,5000 1,0000 2,0000 5,00000 10,00000 20,00000 50,000000 100,000000 200,000000 500,0000000
(novas linhas substituídas por espaços)fonte
,00
nos valores inteiros." (I imaginar isso também se destina a incluir a fuga,0
se for caso disso)Java 8,
1091088180 bytesObrigado a @ OlivierGrégoire pela ideia de localidade
Experimente online!
fonte
Locale.setDefault(Locale.FRENCH);
na parte não competitiva do TIO.x->{for(double i=.001;i<11;)System.out.printf("%.2f %.2f %.2f ",i*=10,i*2,5*i);}
Bash , 38 bytes
Requer um código de idioma apropriado, que é permitido por padrão e não custa bytes .
Experimente online!
fonte
APL (Dyalog) ,
3028 bytesPrograma completo. Saídas para espaço separado para STDOUT.
Experimente online!
2 2.5 2
a lista;[2,2.5,2]
14⍴
ciclicamente r eshape de comprimento 14;[2,2.5,2,2,2.5,2,2,2.5,2,2,2.5,2,2,2.5]
.01
preceder 0,01;[0.01,2,2.5,2,2,2.5,2,2,2.5,2,2,2.5,2,2,2.5]
×\
multiplicação cumulativa;[0.01,0.02,0.05,0.1,0.2,0.5,1,2,5,10,20,50,100,200,500]
2⍕
formato com duas casas decimais;" 0.01 0.02 0.05 0.10 0.20 0.50 1.00 2.00 5.00 10.00 20.00 50.00 100.00 200.00 500.00"
⊢
produzir que (separar','
de2
)'\.'⎕R','
PCRE R períodos EColoque com vírgulas;" 0,01 0,02 0,05 0,10 0,20 0,50 1,00 2,00 5,00 10,00 20,00 50,00 100,00 200,00 500,00"
fonte
R
70, 50 bytesinspirado por @Giuseppe:
Experimente aqui!
Ungolfed
fonte
Pitão , 37 bytes
Experimente online!
Pitão , 37 bytes
Reduzirá em alguns minutos.
Experimente online!
fonte
JavaScript (ES6), 83 bytes
Retorna uma matriz.
Demo
Mostrar snippet de código
Versão recursiva (ES7), 84 bytes
Retorna uma string com um espaço à direita.
Demo
Mostrar snippet de código
fonte
Python 2 ,
80777573 bytes-2 bytes graças a @ Mr.Xcoder
-1 byte graças a @EriktheOutgolfer
-2 bytes graças a @totallyhuman
-2 bytes graças a @Lynn
Experimente online!
fonte
Retina , 42 bytes
Experimente online! Explicação: Existem quinze valores, com 1, 2 e 5 em cada um dos cinco lugares. O primeiro estágio insere cinco 0s. O segundo estágio os repete em um quadrado, depois altera a diagonal final em 1s, depois duplica essas linhas três vezes com 2 e 5. O terceiro estágio insere as vírgulas e o último estágio remove zeros iniciais desnecessários.
fonte
Carvão , 37 bytes
Experimente online! Link é a versão detalhada.
Yay, compressão!
fonte
Bash , 88 bytes
Experimente online!
fonte
echo 0,01 0,02 0,05 0,10 0,20 0,50 1,00 2,00 5,00 10,00 20,00 50,00 100,00 200,00 500,00
é do mesmo tamanho :(JavaScript (ES6), 81 bytes
Retorna uma matriz.
Demo
Mostrar snippet de código
fonte
Lisp comum, 95 bytes
Experimente online!
fonte
Casca , 28 bytes
Experimente online!
Apenas manipulação de strings, pois Husk é péssimo na formatação de números de ponto flutuante.
Explicação
fonte
C ++,
138120 bytes-18 bytes graças ao MSalters
Versão codificada, por Lynn, 116 bytes
fonte
v
ef
:void p(){for(auto&a:{"0,0%d ","0,%d0 ","%d,00 ","%d0,00 ","%d00,00 "})for(int b:{1,2,5})printf(a,b);}
- apenas 120 bytes#include<ios>void p(){puts("0,01 0,02 0,05 0,10 0,20 0,50 1,00 2,00 5,00 10,00 20,00 50,00 100,00 200,00 500,00");}
tem 116 bytes.R ,
70bytes 61Experimente online!
-9 bytes graças a Rui Barradas
Superado por AndriusZ
fonte
print
format(c(1,2,5)*10^rep(-2:2,e=3),ns=2,de=",",sc=9)
print
resposta em torno dessa resposta, mas você deve publicá-la; Eu apenas usei o método mais bárbaro para alterar as configurações, usandoformat
algum pensamento real necessário.options
em um.options(OutDec=",",scipen=5)
.C (gcc) , 82 bytes
Experimente online!
fonte
05AB1E , 25 bytes
Retorna uma lista de strings.
Experimente online.
Explicação:
125S5и
pode ser•}•15∍
(pressionado compactado125
; amplie-o para o tamanho 15125125125125125
:) e'.',:
pode ser„.,`:
(pressionado string ".,", pop e envie os caracteres como itens separados para a pilha) para a mesma contagem de bytes: Experimente on-line.Além disso,
N3÷°*т/
pode ser reduzido paraN3÷Í°*
(ondeÍ
subtrai 2), mas, infelizmente, precisamos/
que todos os números se tornem decimais, enquanto que com aN3÷Í°*
maioria dos números permanecerão inteiros.fonte
T-SQL, 104 bytes
Quebras de linha são apenas para legibilidade.
Irritantemente maior que a
PRINT
versão trivial (90 bytes):fonte
Bubblegum , 41 bytes
Experimente online!
fonte
Retina , 58 bytes
Experimente online!
fonte
Ruby ,
6662 bytes4 bytes mais curtos graças ao Lynn !
Experimente online!
fonte
-2.upto 2{…}
salva 3 bytes.'%.2f '.%v*10**m
salva um byte (chamando o%
método!)C # (.NET Core) , 107 bytes
Executá-lo
fonte
JavaScript - 96 bytes
E aqui está uma abordagem funcional um pouco mais longa (98 caracteres):
fonte
J , 36 bytes
Experimente online!
fonte
Tcl , 80 bytes
Experimente online!
Tcl , 90 bytes
Experimente online!
Ainda muito longo, jogando mais tarde!fonte
set i -2;time {lmap c {1 2 5} {puts [regsub \\. [format %.2f [expr $c*1e$i]] ,]};incr i} 5
time
para iterar em vez delmap
renderiza mais bytes:set d -3;time {incr d;lmap c {1 2 5} {puts [regsub \\. [format %.2f $c\e$d] ,]}} 5