Tantangan Anda adalah mencetak x
digit pi di manax
panjang kode Anda.
Contoh:
Source code (length) -> output
foo! (4) 3.141
foobar (6) 3.14159
kinda long (10) 3.141592653
+++++ (5) 3.1415
123456789 (9) 3.14159265
Anda dapat menggunakan untuk menentukan jumlah digit yang perlu Anda cetak. Perhatikan bahwa titik desimal tidak dihitung sebagai digit pi - jadi kode panjang 3 harus memiliki outputfloor(π/10 * 10code_length) / 10code_length - 1
3.14
, panjang 4.
Aturan:
- Panjang kode Anda harus lebih besar dari tiga karakter.
- Anda tidak boleh menggunakan celah standar apa pun.
- Anda dapat menggunakan metode output standar yang diizinkan.
- Anda mungkin tidak membaca sumber Anda untuk menentukan panjang kode.
- Anda tidak boleh menggunakan konstanta pi builtin.
- Pi harus sepenuhnya akurat dan tidak diperkirakan.
- Titik desimal dalam output diperlukan. Jika Anda memilih untuk menghasilkan melalui nilai balik, Anda harus mengembalikan integer titik mengambang.
- Tujuan dari tantangan ini adalah untuk menemukan solusi terpendek dalam setiap bahasa, bukan bahasa terpendek untuk solusi. Jangan takut untuk memposting solusi dalam bahasa ketika solusi yang lebih pendek diposting dalam bahasa yang sama selama solusi Anda menggunakan metode yang berbeda.
3
diizinkan?Jawaban:
Japt ,
94 byteSesingkat itu bisa diijinkan :)
Termasuk yang tidak bisa dicetak (umpan garis terbalik, kode char 141) setelah
#
.Menguji
Dalam Japt, setiap karakter berikut
#
dikonversi ke kode karakternya dan ditambahkan ke setiap angka atau titik desimal yang dapat mendahuluinya, dalam hal ini3.
sumber
Mathematica, 18 byte
menggunakan fungsi zeta
Cobalah online!
sumber
Jelly , 9 byte
Cobalah online!
Keluaran
3.14159265
Bagaimana itu bekerja
sumber
VBA (Excel), 15 byte
Output: 3.14159265358979
Saya pikir ini tidak dapat diterima karena saya golf hanya agar sesuai dengan panjang PI. Panjang un-golfed adalah 17 byte. D:
sumber
Atn
arctangent? Saya tidak yakin apakah ini diizinkan ... meminta OPJelly , 6 byte
Cobalah online!
Mencetak
3,14159
dengan pemisah desimal "Eropa" yang diizinkan,
,.Bagaimana?
sumber
,'
di sana.-ÆAær5
dan menggunakan.
alih-alih,
, tetapi kemudian itu akan sama dengan solusi Jelly saya.Python 3 , 64 byte
Cobalah online!
sumber
print'3.%d'%int('3p3aqd50r7654t9ywkfkgsm0yx0bikcluxlhsm',36)
.SOGL V0.12 ,
1097 byteCoba Di Sini!
Penjelasan:
sumber
Desmos , 130 byte
Kode sumber untuk ini (Yang dapat diakses dengan menyalin dan menempel di dalam dan di luar Desmos) tidak optimal ketika dibuat menggunakan editor Desmos, jadi beberapa byte spasi putih akan diturunkan jika memungkinkan.
Ini mendefinisikan fungsi
f
yang tidak mengambil argumen pengembalian pi, dihitung menggunakan Urutan Gregory untukk=9^9
(Saya tidak dapat mengkonfirmasi ini cukup akurat, namun saya percaya bahwa itu, dapat dibuat lebih akurat dengan nilai lebih besar dari k ) itu kemudian lantai hasilnya ke128
tempat desimal, yang, di samping3.
, adalah panjang kode sumber.Cobalah online!
sumber
3.14159265617
, apakah saya mencari di tempat yang salah; apakah saya perlu menekan tombol?Arang , 8 byte
Cobalah online!
Hanya string terkompresi.
sumber
Javascript, 16 byte
sumber
CJam , 5 byte
Cobalah online!
Bagaimana itu bekerja
sumber
3.E
. : P, bagaimanapun juga, penyalahgunaan IO yang luar biasa.3'.EF
, tetapi kemudian saya melihat jawaban ini ...Neim , 5 byte
Penjelasan:
Cobalah online!
sumber
APL, 6 byte
Mengambil bagian imajiner dari ln (-1).
Cobalah online!
sumber
J , 16 byte
Cobalah online!
Mirip dengan jawaban VBA. Output:
3.141592653589793
.sumber
_3 o.1
menghitung atan (1). Seperti yang mungkin sudah Anda ketahui, saya menyadari aturannya.Math.JS , 17 byte.
Itu 5 ruang terdepan
Ini menghitung hingga 15 tempat desimal, dan secara implisit mencetaknya.
Cobalah secara Online!
sumber
ln(-1)
, tetapi karena ini adalah angka imajiner murni, ini setara dengan membagi dengani
.05AB1E , 11 byte
Cobalah online!
MENGGUNAKAN BUILT-INS:
05AB1E , 4 byte
Cobalah online!
3žs
tidak berfungsi karena suatu alasan ...sumber
E3.
, aku marah pada diriku sendiri sekarang: p.ForceLang , 269 byte
sumber
MATL ,
98 byteCobalah online!
Penjelasan:
Disimpan satu byte berkat Luis Mendo!
sumber
Jelly , 6 byte
Cobalah online!
Menggunakan pendekatan yang berbeda dari jawaban Jelly lainnya.
Bagaimana?
-ÆA
adalah cosinus terbalik dari-1
(yang pi),ær5
mengambil bagian yang diperlukan. Ini berhasil sehingga pembulatan setara dengan pemotongan dalam kasus inisumber
Haskell , 15 byte
Cobalah online!
Menggunakan formula @JungHwanMin.
sumber
Perl 5, 40 byte
Membutuhkan opsi baris perintah
-pMbignum
, dihitung sebagai 8.Penggunaan sampel:
Saya minta maaf karena tidak ada tautan TIO, sepertinya tidak mendukung
bignum
(atau brace pembuka yang tak tertandingi ...).sumber
MY , 7 byte
Cobalah online!
Bagaimana?
’
, kurangi bagian atas tumpukan (0
muncul jika kosong, buat tumpukan[-1]
). (Simbol yang sama seperti Jelly)2
, dorong2
.ō
, karena bagian atas tumpukan adalah dua, buang2
, popn
, lalu tekanacos(n)
(dalam radian, ini memberi pi, simbol inio
dengan tanda negatif di atasnya.o
(untuk trigonometri normal) berasal dari APL)."
, pop elemen atas tumpukan dan dorong sebagai string.8
, dorong8
.↑
, popa
lalub
, dorongb[:a]
(Ini adalah simbol lain yang diambil dari APL).↵
, keluaran dengan baris baru (OUTPUT <- STACK).sumber
RPL (HP48), 86,5 byte, 87 digit [Apakah ini masuk hitungan?]
GROB adalah kata kunci gambar. 2 angka yang mengikuti adalah lebar dan tinggi. Digit heksadesimal yang mengikuti adalah bitmap. Itu 1 byte penyimpanan untuk setiap 2 digit plus metadata gambar.
Program kosong
« »
membutuhkan 10 byte. Perintah membutuhkan 2,5 byte. Float membutuhkan 10,5 byte, tetapi jika itu sama dengan integer satu digit, itu bisa memakan 2,5 byte.HP48 menyimpan 4 daripada 8 bit di setiap lokasi memori, sehingga satu byte menempati 2 lokasi berturut-turut (low endian). Seringkali potongan 20-bit digunakan, dan mereka mengambil 2,5 byte (bukan 3).
sumber
> <> , 16 byte
Cobalah online!
Ada beberapa unsintables di sana, dengan yang pertama bernilai 26 dan yang kedua 141.
sumber
Pyth , 9 byte
Coba di sini.
Bekerja dengan fakta itu .
sumber
Ruby , 16 byte
Cobalah online!
sumber
Excel VBA, 16 Bytes
Fungsi jendela langsung VBE anonim yang tidak mengambil input dan output ke salah satu STDOUT Excel VBA
Setiap baris mewakili fungsi terpisah yang mengembalikan Pi dengan panjang 16
sumber
Oktaf , 16 byte
Cobalah online!
Saya mengalami kesulitan membayangkan bagaimana ini bisa lebih pendek ...
sumber
PHP, 14 Bytes
Cobalah online!
Agak sulit, tapi persiapannya
M_PI
adalah3.1415926535898
sumber
TI-BASIC, 7 byte
Tiga pernyataan ini akan dicetak
3.141593
.Catatan: TI-BASIC adalah bahasa tokenized Jumlah karakter tidak sama dengan jumlah byte.
sumber