Tarefa
Escreva uma função ou um programa para encontrar o número de rotações necessárias para uma roda percorrer uma determinada distância, considerando seu raio.
Regras
A entrada pode ter 2 números racionais positivos e pode ser obtida em qualquer formato conveniente.
Ambas as entradas são da mesma unidade.
Não deve haver nenhum dígito de 0 a 9 no seu código.
A saída será um número inteiro (no caso de flutuação, arredondar para o infinito)
Isso é código-golfe, então o código mais curto ganha
Exemplos
distance radius output
10 1 2
50 2 4
52.22 4 3
3.4 0.08 7
12.5663 0.9999 3
code-golf
restricted-source
Vedant Kandoi
fonte
fonte
-DP=3.14
nos sinalizadores do compilador, que definiriamP
como uma aproximação de pi, o que provavelmente é não o que você destinaRespostas:
MathGolf ,
54 bytesExperimente online!
Explicação
fonte
APL + WIN, 9 bytes
Solicita o raio seguido pela distância:
Experimente online! Cortesia de Dyalog Classic
Explicação:
fonte
⌈⎕÷○+⍨⎕
trabalha para 7 bytes.Java 8,
32 e30 bytesContém imprimível
\u0002
entre aspas simples.Porto da resposta Perl 6 do @jOKing .
Experimente online.
fonte
2
e depois usar o dígito1
... Felizmente, Erik está certo de que um simples unário negativo tem o mesmo efeito que+1
(frequentemente usado livrar-se dos parênteses, pois o negativo e o unário têm maior precedência do que a maioria dos outros operadores).Perl 6 ,
1512 bytes-3 bytes tjanks para nwellnhof, lembrando-me sobre tau
Experimente online!
Anônimo Qualquer que seja a lambda que use a fórmula
(a/b/tau).floor+1
. Tau é duas vezes pi. As duas variáveis anônimas$
são coagidas ao número0
, que é usado para+|0
somar o número (bit a bit ou 0) e adicionar um+!$
(mais não zero).fonte
Python 2 ,
47454443 bytesExperimente online!
fonte
l/(r+r)//pi+l/l
e salvar um byte.05AB1E , 6 bytes
Porto do comentário Python 2 de @flawr .
Leva a entrada na ordem
radius
,distance
.Experimente online ou verifique todos os casos de teste .
Explicação:
fonte
PHP, 47 bytes
Experimente online .
fonte
Ruby , 29 bytes
Experimente online!
fonte
C, 46 bytes
Sou novo no PPCG, portanto, não tenho certeza se preciso contar outras partes na contagem de bytes, como o
necessário para a função ceil, que aumentará a contagem para 64 bytes
fonte
#include
e afins para o total de bytes. Um link para um conjunto de testes on-line é sempre apreciado, aqui está um que você está livre para incorporar em seu post: tio.run/...Catholicon , 8 bytes
Explicação:
Nova versão (pi construído em um byte, parâmetros de divisão trocados), 5 bytes
fonte
J ,
109 bytesExperimente online!
fonte
Stax , 5 bytes
Execute e depure
fonte
MathGolf ,
65 bytesSemi-porta do comentário Python 2 de @flawr .
Recebe a entrada na ordem
radius distance
.-1 byte porque o
ceil
built-in acaba de ser adicionado, substituindo ofloor+1
.Experimente online .
Explicação:
fonte
C (gcc) ,
454745 bytesUma aproximação razoável de pi é 355/113. Como a circunferência C = 2 * r * PI, podemos, em vez de pi, usar tau, que, é claro, é ~ 710/113. 710 passa a ter os fatores convenientes 2 * 5 * 71, que são compactados como
'G' * '\n'
.Nós adicionamos um (r/r
) para forçar o arredondamento para o infinito.Edit: Meu truque era muito inteligente para o seu próprio bem: é claro que fazia falhar se a distância fosse um múltiplo da circunferência.
Experimente online!
fonte
Julia 1.0 , 20 bytes
Experimente online!
fonte
R ,
3932 bytes-7 bytes Graças a Giuseppe
Experimente online!
Eu sinto que isso definitivamente poderia ser jogado, mas estou um pouco preguiçoso agora para fazer qualquer coisa sobre isso
fonte
min , 16 bytes
Toma a distância e o raio colocados na pilha nessa ordem. Em seguida, divide por tau, arredonda e faz int.
fonte
Gelatina , 6 bytes
Experimente online!
fonte
Japonês, 7 bytes
Experimente aqui
fonte
JavaScript (Nó Babel) , 25 bytes
-2 bytes usando @flawr comment = D. -1 de @Kevin. -7 de @Shaggy
Experimente online!
fonte
a=>b=>Math.ceil(a/(b+b)/Math.PI)
tem 32 bytes. :)Dardo ,
4746 bytesExperimente online!
fonte
Haskell, 25 bytes
fonte
(!)
vez def
e usá-lo emceiling$
vez deceiling(..)
economizar 3 bytes: Experimente online!Lua ,
61585749 bytesExperimente online!
Graças a KirillL. -8 bytes.
fonte
Lisp comum, 36 bytes
Experimente online!
fonte
Tcl , 50 bytes
Experimente online!
Tcl , 53 bytes
Experimente online!
A falta de uma constante ou função pi me faz perder a competição de golfe!
fonte
[incr i]
é bastante inteligente, mas acho que você pode usar$d/$d
ou$r/$r
não.PowerShell,
535251 bytes-1 byte graças a @mazzy
-1 byte depois que percebi que não precisava de um ponto e vírgula após o
param()
blocoExperimente online!
Recebe entrada de dois parâmetros da linha de comando, distância
-d
e raio-r
.fonte
param($d,$r);($a=[math])::ceiling($d/($r+$r)/$a::pi)
JavaScript (Nó Babel), 23 bytes
Experimente online!
fonte
Clojure , 50 bytes
Uma função anônima que aceita dois números inteiros
a
eb
como argumentos: a distância e o raio da roda, respectivamente.Experimente online!
(count " ")
2
fonte
TI-Basic (série 83), 12 bytes
Leva a entrada como uma lista de raio e distância em
Ans
: por exemplo{0.9999:12.5663:prgmX
,.e^(ΔList(ln(Ans
tomará a proporção dessas distâncias emin(
transformará isso em um número. Em seguida, dividimos porTmax
, que é um parâmetro gráfico que é igual a 2π por padrão. Finalmente,-int(-
pega o teto.fonte
Pari / GP , 23 bytes
Experimente online!
fonte