Faça-me um cone de sorvete, por favor
Temos uma tonelada de ótimos locais de sorvete aqui na Nova Inglaterra. A maioria deles está fechada para o inverno agora, então ...
.-@@-.
(======)
(--------)
(==========)
(__________)
\/\/\/\/\/
\/\/\/\/
\/\/\/
\/\/
\/
OBJETIVO Emita exatamente o cone de sorvete acima. (ou retorne de uma função)
Este é o código de golfe, então a resposta mais curta ganha
code-golf
string
ascii-art
kolmogorov-complexity
cleblanc
fonte
fonte
iCeCrEaMCoNe
não seria uma delas. Este site costumava ter uma regra que você não pode responder em um idioma (/ usa um recurso) mais recente que o desafio, mas que foi substituído por "não ative as respostas triviais". Afinal, existem línguas de golfe apenas por diversão :)Respostas:
SOGL V0.12 , 24 bytes
Experimente aqui!
Uma solução simples de compactação:
Sem versão de compactação - muito mais tempo, pois a compactação SOGLs funciona bem para isso
fonte
Python 2 , 95 bytes
Experimente online!
fonte
PowerShell , 85 bytes
Experimente online!
OU
PowerShell , 85 bytes
Experimente online!
Faça sua escolha. Nos dois casos, as três primeiras linhas não têm bytes suficientes para fazer qualquer tipo de compactação no PowerShell.
O primeiro caso usa multiplicação de strings para produzir cada um dos 10
=
e_
linhas, enquanto o segundo usa uma multiplicação de loop e string. Em qualquer um dos casos, a última linha forma o cone, fazendo um loop de1
para5
e a cada iteração, produzindo o número apropriado de espaços seguido pelo número apropriado de peças do cone.Todas essas strings são deixadas no pipeline, e o implícito
Write-Output
na conclusão do programa nos fornece uma nova linha entre elementos de graça.fonte
V ,
4846 bytesExperimente online!
Hexdump:
fonte
Carvão , 29 bytes
Experimente online! Link é a versão detalhada do código. Explicação:
Imprima a metade direita da primeira linha.
Para cada um dos caracteres
=-=
, repita 3 vezes para o primeiro e um tempo adicional para cada caractere subseqüente e, em seguida, acrescente a)
, imprimindo cada resultado em sua própria linha.Imprima 5
_
s.Imprima a borda do cone.
Imprima a final
)
e posicione o cursor dentro do cone.Espelhe o meio cone.
Encha o corpo do cone.
fonte
Python 2 , 86 bytes
Experimente online!
Trabalhando com a solução de Lynn .
fonte
-2%n/4
é tão legal :) Você procura expressões como essa manualmente ou executa algum tipo de busca por força bruta?35/n*2
, que ele descobriu como5*7/n*2
não conhece números de vários dígitos.Perl 6 ,
115 95 94 9290 bytes3 bytes salvos por AlexDaniel em # perl6 em irc.freenode.net
Experimente online!
fonte
05AB1E , 42 bytes
Experimente online!
1026344463000063444446355555 agora é o número de sorvete b / c que ninguém mais o usou.
fonte
Chiclete , 50 bytes
Experimente online!
fonte
C, 171 bytes
Experimente online!
C, 146 bytes
Apenas imprime a string codificada.
Experimente online!
fonte
Python 2 , 104 bytes
Peguei um truque emprestado da resposta de Jonathan Frech e agradeço a ele por me salvar alguns bytes também.
Experimente online!
Python 2 , 108 bytes
Experimente online!
fonte
Python 2 ,
125120119116106 bytesin range(5,0,~0)
parain[5,4,3,2,1]
.Experimente online!
fonte
Japt , 50 bytes
Experimente online!
fonte
Perl 5 , 92 bytes
Experimente online!
fonte
;
como delimitador pors///
trabalhar por algum motivo. No celular, não é possível fazer nada demais!Experimente online!Ruby , 97 bytes
Experimente online!
Primeira vez que você usa Ruby, então dicas são muito bem-vindas.
fonte
Python 3, 202 bytes
Isso é terrível, são mais bytes do que apenas definir a string e imprimir isso mesmo.
Experimente Online
fonte
\n
em vez de separadosprint
declaraçõesGeléia ,
7472 bytesExperimente online!
Explicação:
fonte
Mathematica, 117 bytes
Saídas
você pode testá-lo na sandbox wolfram (embora as fontes usadas possam distorcer um pouco o resultado)
fonte
\/
é um personagem especial. Eu não poderia encontrar o que é usado para assim que eu perguntei sobre Mma.SE: mathematica.stackexchange.com/q/200673/61597Pitão, 58 bytes
Assista em ação !
fonte
C, 138 bytes
Experimente online!
fonte
j=6;--j;puts(""))for(i=7;--i;)printf(&L"⽜ "[i>j]
vez dej=1;++j<7;i=puts(""))for(;i<7;)printf(i++<j?" ":"\\/"
VimL, 76 bytes
Animado com vimanim.py .
fonte
C 165 bytes
fonte
Cubicamente ,
345336 bytesEncontrado através desta ferramenta e jogado por meio de pesquisa e substituição, com algumas otimizações personalizadas.
Experimente online!
Método alternativo:
391 bytes (não modifica o cubo)
fonte
C (gcc) ,
137136 bytes-1 bytes graças a ceilingcat
Experimente online!
fonte