Fransén-Robinson sabitinin yaklaşık değeri


9

Bir girdi verildiğinde n, Fransén-Robinson sabitinin değerini nondalık basamaktan sonraki basamaklarla ve yuvarlama ile çıktılayın .

kurallar

  • Tüm girişlerin 1 ile 60 arasında bir tamsayı olduğunu varsayabilirsiniz.
  • İlişkili herhangi bir değer depolayamazsınız - sabit hesaplanmalıdır, geri çağrılmamalıdır.
  • Yuvarlama aşağıdaki ölçütlerle yapılmalıdır:
    • Son basamağı takip eden basamak beşten azsa, son basamağın aynı kalması gerekir.
    • Son basamağı takip eden basamak beşten büyük veya ona eşitse, son basamak bir artırılmalıdır.
  • Yalnızca ilk n+1basamakları çıkarmalısınız.
  • Standart boşluklar geçerlidir.

Test Durumları

>>> f(0)
3

>>> f(1)
2.8

>>> f(11)
2.80777024203

>>> f(50)
2.80777024202851936522150118655777293230808592093020

>>> f(59)
2.80777024202851936522150118655777293230808592093019829122005

>>> f(60)
2.807770242028519365221501186557772932308085920930198291220055

Ya keyfi hassas şamandıralar için desteğiniz yoksa?
Kusur

1
@flawr Dilin dize birleştirme veya benzeri bir biçim kullanması gerektiğini düşünüyorum. Aksi takdirde, bu zorluğun dili olmayabilir.
Addison Crump

Çok kötü, bu temelde bize sadece sayıları kodlamakla yetiniyor. Not: Neden f(60)test senaryolarını eklemiyorsunuz? Bu şekilde katılımcılar harici olarak almak zorunda
kalmayacaklardı

@flawr Hardcoding kural 2'ye izin verilmiyor
Addison Crump

Sondaki sıfırlar iyi mi?
Mego

Yanıtlar:


7

Mathematica, 44 39 36 25 UTF-8 bayt

  • Sp3000 sayesinde -5 bayt
  • Kennytm sayesinde -3 bayt
  • Senegrom sayesinde -11 bayt

Çapraz 44 hala düzenli 44 !!

N[∫1/x!{x,-1,∞},#+1]&

Misal:

f=N[∫1/x!{x,-1,∞},#+1]&
f[2]

Çıktılar 2.81.

açıklama

N[               , # + 1] 
  ∫1/x!{x,-1,∞}

İlk adım, (ilk parametre) + 1 hassasiyetle Ngeri kalanı umeric alır #. !(faktöriyel) beklediğinizi yapar. {x, -1, Infinity}(garip olarak biçimlendirilmiş) İntegralin sınırlarını belirler.


Bunu test edemiyorum, bu yüzden bu turları doğru bir şekilde varsayıyorum?
Addison Crump

1
@VTCAKAVSMoACE Kontrol ettim n = 60, doğru yuvarlar. ( 61St rakamı bir 8). Wolfram'ın belgelerine bakabilirsiniz N.
NoOneIs Here

Coolio. Sadece kontrol.
Addison Crump

Muhtemelen yerine bir değişmez kelime kullanabilirsiniz Infinity. Bunun ComplexInfinityyerine üretim
yapmazsa, 0'a bölmenizi öneririm

1
Unicode-F74C'nin N[∫1/x!{x,-1,∞},#+1]&nerede olduğunu deneyin ; 𝕕Mathematica'daki gibi görüntülenir . (önceki alanın &da gerekli olmadığını unutmayın ...)
senegrom
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.