Tugas
Tulis fungsi atau program untuk menemukan jumlah rotasi yang diperlukan oleh roda untuk menempuh jarak tertentu, dengan radiusnya.
Aturan
Input dapat berupa 2 angka rasional positif dan dapat diambil dalam format apa pun yang nyaman.
Kedua input memiliki unit yang sama.
Tidak boleh ada angka 0-9 dalam kode Anda.
Output akan berupa bilangan bulat (jika mengambang, bulat hingga tak terbatas)
Ini adalah kode-golf sehingga kode terpendek menang
Contohnya
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
sumber
sumber
-DP=3.14
pada flag compiler, yang akan didefinisikanP
sebagai perkiraan pi, yang mungkin merupakan bukan yang Anda maksudJawaban:
MathGolf ,
54 byteCobalah online!
Penjelasan
sumber
APL + WIN, 9 byte
Anjuran untuk radius diikuti oleh jarak:
Cobalah online! Atas perkenan Dyalog Classic
Penjelasan:
sumber
⌈⎕÷○+⍨⎕
bekerja selama 7 byte.Java 8,
3230 byteBerisi yang tidak dapat dicetak di
\u0002
antara tanda kutip tunggal.Port of @jOKing 's Perl 6 menjawab .
Cobalah online.
sumber
2
, dan kemudian hanya menggunakan digit1
... Untungnya Erik memang benar bahwa unary negatif sederhana memiliki efek yang sama seperti+1
(sering digunakan untuk menghilangkan tanda kurung karena negatif dan unary memiliki prioritas lebih tinggi daripada kebanyakan operator lain).Perl 6 ,
1512 byte-3 byte tjanks untuk nwellnhof mengingatkan saya tentang tau
Cobalah online!
Anonim Apapun lambda yang menggunakan formula
(a/b/tau).floor+1
. Tau dua kali pi. Dua variabel anonim$
dipaksa untuk nomor0
, yang digunakan untuk lantai nomor+|0
(bitwise atau 0) dan tambahkan satu+!$
(ditambah bukan nol).sumber
Python 2 ,
47454443 byteCobalah online!
sumber
l/(r+r)//pi+l/l
dan menghemat satu byte.05AB1E , 6 byte
Port of @flawr 's Python 2 komentar .
Mengambil input dalam urutan
radius
,distance
.Cobalah secara online atau verifikasi semua kasus uji .
Penjelasan:
sumber
PHP, 47 byte
Cobalah online .
sumber
Ruby , 29 byte
Cobalah online!
sumber
C, 46 byte
Saya baru untuk PPCG, jadi saya tidak yakin apakah saya harus menghitung bagian lain dalam jumlah byte, seperti
diperlukan untuk fungsi ceil, yang akan naik hitungan menjadi 64 byte
sumber
#include
dan sejenisnya terhadap total byte Anda. Tautan ke test suite online selalu dihargai, inilah yang Anda bebas untuk memasukkannya ke dalam posting Anda: tio.run/…Catholicon , 8 byte
Penjelasan:
Versi baru (pi builtin dibuat satu byte, parameter pembagian bertukar), 5 byte
sumber
J ,
109 byteCobalah online!
sumber
Stax , 5 byte
Jalankan dan debug itu
sumber
MathGolf ,
65 byteSemi-port dari komentar Python 2 @ flawr .
Mengambil input dalam urutan
radius distance
.-1 byte karena
ceil
builtin baru saja ditambahkan, menggantikanfloor+1
.Cobalah online .
Penjelasan:
sumber
C (gcc) ,
454745 bytePerkiraan pi yang masuk akal adalah 355/113. Karena keliling C = 2 * r * PI, kita bisa bukannya pi menggunakan tau, yang tentu saja ~ 710/113. 710 kebetulan memiliki faktor nyaman 2 * 5 * 71, yang secara ringkas dinyatakan sebagai
'G' * '\n'
.Kami menambahkan satu (r/r
) untuk memaksa pembulatan hingga tak terbatas.Sunting: Trik saya terlalu pintar untuk kebaikannya sendiri: tentu saja membuatnya gagal jika jaraknya kelipatan dari kelilingnya.
Cobalah online!
sumber
Julia 1.0 , 20 byte
Cobalah online!
sumber
R ,
3932 byte-7 byte Berkat Giuseppe
Cobalah online!
Saya merasa ini pasti golf, tapi saya agak malas sekarang untuk melakukan apa-apa
sumber
min , 16 byte
Mengambil jarak dan jari-jari diletakkan di tumpukan dalam urutan itu. Kemudian membaginya dengan tau, bulat, dan membuat int.
sumber
Jelly , 6 byte
Cobalah online!
sumber
Japt, 7 byte
Coba di sini
sumber
JavaScript (Babel Node) , 25 byte
-2 byte menggunakan @ flawr comment = D. -1 dari @Kevin. -7 dari @Shaggy
Cobalah online!
sumber
a=>b=>Math.ceil(a/(b+b)/Math.PI)
32 byte. :)Dart ,
4746 byteCobalah online!
sumber
Haskell, 25 byte
sumber
(!)
alih-alihf
dan menggunakanceiling$
alih-alihceiling(..)
yang menghemat 3 byte: Coba online!Lua ,
61585749 byteCobalah online!
Terima kasih untuk KirillL. -8 byte.
sumber
Gangguan Umum, 36 byte
Cobalah online!
sumber
Tcl , 50 byte
Cobalah online!
Tcl , 53 byte
Cobalah online!
Kurangnya konstanta pi atau fungsi membuat saya kehilangan kompetisi golf!
sumber
[incr i]
cukup pintar tapi saya pikir Anda bisa menggunakan$d/$d
atau$r/$r
sebaliknya.PowerShell,
535251 byte-1 byte terima kasih kepada @mazzy
-1 byte setelah saya menyadari saya tidak perlu titik koma setelah
param()
blokCobalah online!
Mengambil input dari dua parameter baris perintah, jarak
-d
dan jari-jari-r
.sumber
param($d,$r);($a=[math])::ceiling($d/($r+$r)/$a::pi)
JavaScript (Babel Node), 23 byte
Cobalah online!
sumber
Clojure , 50 byte
Fungsi anonim yang menerima dua bilangan bulat
a
danb
sebagai argumen: jarak dan jari-jari roda masing-masing.Cobalah online!
(count " ")
2
sumber
TI-Basic (83 series), 12 byte
Mengambil input sebagai daftar radius dan jarak di
Ans
: misalnya{0.9999:12.5663:prgmX
,.e^(ΔList(ln(Ans
akan mengambil rasio jarak tersebut, danmin(
mengubahnya menjadi angka. Kemudian kita bagi denganTmax
, yang merupakan parameter grafik yang sama dengan 2π secara default. Akhirnya,-int(-
ambil plafon.sumber
Pari / GP , 23 byte
Cobalah online!
sumber