कोड की लंबाई के रूप में पाई के अंकों की समान संख्या के साथ आउटपुट


9

आपकी चुनौती xपाई के अंकों को प्रिंट करना है जहां xआपकी कोड लंबाई है।

उदाहरण:

Source code (length) -> output
foo!        (4)         3.141
foobar      (6)         3.14159
kinda long  (10)        3.141592653
+++++       (5)         3.1415
123456789   (9)         3.14159265

आप प्रिंट करने के लिए आवश्यक अंकों की संख्या निर्धारित करने के लिए उपयोग कर सकते हैं । ध्यान दें कि दशमलव बिंदु को pi के अंक के रूप में नहीं गिना जाता है - इसलिए लंबाई 3 के कोड में आउटपुट , लंबाई 4 का होना चाहिए ।floor(π/10 * 10code_length) / 10code_length - 13.14

नियम:

  • आपकी कोड लंबाई तीन वर्णों से बड़ी होनी चाहिए।
  • आप किसी भी मानक खामियों का उपयोग नहीं कर सकते हैं।
  • आप किसी भी मानक अनुमत आउटपुट विधियों का उपयोग कर सकते हैं।
  • कोड लंबाई निर्धारित करने के लिए आप अपने स्रोत को नहीं पढ़ सकते हैं।
  • आप बिल्ट पीआई कंटीन्यू का उपयोग नहीं कर सकते हैं।
  • पाई पूरी तरह से सटीक होना चाहिए और अनुमानित नहीं होना चाहिए ।
  • आउटपुट में दशमलव बिंदु आवश्यक है। यदि आप रिटर्न वैल्यू के जरिए आउटपुट चुनते हैं, तो आपको एक फ्लोटिंग पॉइंट पूर्णांक वापस करना होगा।
  • इस चुनौती का लक्ष्य प्रत्येक भाषा में सबसे छोटा समाधान खोजना है, न कि समाधान के लिए सबसे छोटी भाषा। जब कोई छोटा समाधान उसी भाषा में पोस्ट किया जाता है, जब तक आपका समाधान एक अलग विधि का उपयोग नहीं करता है, किसी भाषा में समाधान पोस्ट करने से डरो मत।

... तो यह मान्य होगा या नहीं?
जोनाथन एलन

(संपादित करें ^ यह भी (गोलाई))
जोनाथन एलन

"कोड की लंबाई" बाइट्स में या पात्रों में?
लिन

@ लियन बाइट्स, हमेशा की तरह।
एमडी एक्सएफ

क्या सिर्फ 3अनुमति है?
NoOneIsHere

जवाबों:


3

जाप , ४ बाइट्स

के रूप में कम के रूप में यह स्वीकार्य रूप से मिल सकता है :)

के बाद एक unprintable (रिवर्स लाइन फीड, charcode 141) शामिल है #

3.#

झसे आज़माओ

जाप में, निम्नलिखित किसी भी वर्ण #को उसके वर्ण कोड में बदल दिया जाता है और किसी भी अंक या दशमलव अंक में जोड़ दिया जाता है, जो इससे पहले हो सकता है, इस मामले में3.



7

जेली , 9 बाइट्स

“Œı⁸Ç’÷ȷ8

इसे ऑनलाइन आज़माएं!

आउटपुट 3.14159265

यह काम किस प्रकार करता है

“Œı⁸Ç’     - The integer 314159265
      ÷    - divide
       ȷ8  - The integer 100000000

पाई की गणना नहीं हो रही है!
सर्गियोल

5
हाँ, यह 100000000 से 314159265 को विभाजित कर रहा है :-)
फ्लोरियन एफ

6

VBA (एक्सेल), 15 बाइट्स

MsgBox 4*Atn(1)

आउटपुट: 3.14159265358979

मुझे लगता है कि यह स्वीकार्य नहीं है क्योंकि मैंने इसे केवल पीआई की लंबाई के लिए फिट किया था। इसके बिना गोल्फ की लंबाई 17 बाइट्स है। डी:


1
ऐसा लगता है जैसे आपका अभी तक स्वागत नहीं किया गया है, इसलिए, साइट पर आपका स्वागत है!
एमडी एक्सएफ

ओह, थैंक यू सर! : D
रेमोएल

Atnअभेद्य नहीं है ? मुझे यकीन नहीं है कि अगर यह अनुमति दी जाती है ... ओपी से पूछते हुए
जुंगहवान मिन

मैंने सोचा कि ओपी केवल अंतर्निहित पीआई के लिए चर्चा कर रहा है। मेरी गलती।
रीमूवल

5

जेली , 6 बाइट्स

3;⁽4ƒṾ

इसे ऑनलाइन आज़माएं!

3,14159अनुमत "यूरोपीय" दशमलव विभाजक के साथ प्रिंट ,

कैसे?

3;⁽4ƒṾ - Main link: no arguments
3      - literal 3                3
  ⁽4ƒ  - base 250 literal 14159   14159
 ;     - concatenate              [3,14159]
     Ṿ - unevaluate               ['3', ',', '1', '4', '1', '5', '9']
       - implicit print           3,14159

1
वह अंक सूची विषम लगती है। मुझे लगता है कि वहाँ एक अतिरिक्त ,'है।
जोनाथन फ्रैच

1
आप इसके बजाय कर सकते हैं -ÆAær5और उपयोग कर सकते हैं , लेकिन फिर यह मेरे जेली समाधान के समान होगा। .,
ज़ाचारि

4

पायथन 3 , 64 बाइट्स

print("3.%d"%int("SIXW57LUPVBUA10HBQJOL57QLF54UT0U00KIN32O",36))

इसे ऑनलाइन आज़माएं!


पायथन 2 समतुल्य 60 बाइट्स है print'3.%d'%int('3p3aqd50r7654t9ywkfkgsm0yx0bikcluxlhsm',36)
जोनाथन एलन

@JonathanAllan python 2 59 में: tio.run/##K6gsycjPM/r/…
primo

@primo को लगता है कि अगर और जब पोस्ट किया जाए ...
जोनाथन एलन

1
@JonathanAllan यदि आपका मतलब है जब इसे फिर से खोला गया है, तो यह अब है।
एमडी एक्सएफ


4

डेसमोस , 130 बाइट्स

f\left(\right)=\frac{\operatorname{floor}\left(10^{128}\cdot 4\sum_{k=1}^{9^9}\frac{\left(-1\right)^{k+1}}{2k-1}\right)}{10^{128}}

इसके लिए स्रोत कोड (जिसे डेसमोस के अंदर और बाहर कॉपी और पेस्ट करके एक्सेस किया जा सकता है) डेस्मोस संपादक का उपयोग करके उत्पन्न होने पर इष्टतम नहीं है, इसलिए व्हॉट्सएप के कुछ बाइट्स को नीचे फेंक दिया गया था जहां संभव हो।

यह एक ऐसे फ़ंक्शन को परिभाषित करता है fजो कोई तर्क नहीं देता है पीआई, ग्रेगरी अनुक्रम का उपयोग करके गणना की जाती है k=9^9 (मैं यह पुष्टि नहीं कर सकता कि यह पर्याप्त सटीक है, हालांकि मुझे विश्वास है कि यह है, इसे कश्मीर के अधिक मूल्य के साथ अधिक सटीक बनाया जा सकता है। ) तो यह परिणाम को 128दशमलव स्थानों पर ले जाता है, जो, के साथ 3., स्रोत कोड की लंबाई है।

इसे ऑनलाइन आज़माएं!


कोई वास्तव में परिणाम कैसे देखता है - मैं केवल देखता 3.14159265617हूं, क्या मैं गलत जगह देख रहा हूं; क्या मुझे एक बटन हिट करने की आवश्यकता है?
जोनाथन एलन

डिस्मॉस डिफ़ॉल्ट रूप से दिए गए कई दशमलव स्थानों पर प्रिंट नहीं करता है, लेकिन मूल्य अभी भी सटीक होना चाहिए।
5

1
यह चुनौती के बाद से निराशाजनक है "प्रिंट करने के लिए ..."
जोनाथन एलन

1
"आउटपुट में दशमलव बिंदु आवश्यक है। यदि आप रिटर्न वैल्यू के माध्यम से आउटपुट चुनते हैं, तो आपको एक फ्लोटिंग पॉइंट पूर्णांक वापस करना होगा।" जो इसे वैध बनाता है।
अताको

मुझे लगता है कि इस कथन का आशय कम सटीकता के लिए अनुमति देना नहीं था बल्कि दशमलव विभाजक सुनिश्चित करना था। बुरा मानो मुझे नहीं लगता कि आपका जवाब बुरा है।
जोनाथन एलन



3

CJam , 5 बाइट्स

3.14F

इसे ऑनलाइन आज़माएं!

यह काम किस प्रकार करता है

3.14   e# Push 3.14.
    F  e# Push 15.

यदि केवल आप कर सकते थे 3.E। : पी, किसी भी तरह, आईओ का अद्भुत दुरुपयोग।
ज़ाचारि

पोस्ट करने जा रहा था 3'.EF, लेकिन फिर मैंने यह जवाब देखा ...
फलों को तोड़ना


3

एपीएल, 6 बाइट्स

10○⍟-1

Ln (-1) का काल्पनिक हिस्सा लेता है।

इसे ऑनलाइन आज़माएं!


अरे, वापस @ युरील का स्वागत है! एक अच्छा, मैं ऐसा कुछ भी नहीं सोच रहा था (नकारात्मक संख्या के लॉग के साथ), अच्छा काम!
ज़ाचारि

@ Zacharý धन्यवाद, बस एक यात्रा छोड़ दिया और इस का जवाब देने में मदद नहीं कर सकता: P
Uriel

2

जे , 16 बाइट्स

17j15":4*_3 o.1:

इसे ऑनलाइन आज़माएं!

VBA उत्तर के समान। आउटपुट: 3.141592653589793


"पी को निर्धारित करने के लिए आप एक बिलियन मैक्रो या निरंतर का उपयोग नहीं कर सकते हैं।" मजेदार, यह आपकी टिप्पणी है
लीक नून

आपका आउटपुट 17 बाइट्स है, 16 नहीं।
ATaco

1
@ वास्तव में, यह 16 अंकों का है
केवल

@ लीक यह नहीं करता है। _3 o.1atan (1) की गणना करता है। जैसा कि आप जानते होंगे कि मैं नियमों से अच्छी तरह वाकिफ हूं।
कॉनर ओ'ब्रायन

2

मैथ.जेएस , 17 बाइट्स।

     log(-1,e).im

वह 5 प्रमुख स्थान हैं

यह 15 दशमलव स्थानों की गणना करता है, और इसे स्पष्ट रूप से प्रिंट करता है।

यह ऑनलाइन की कोशिश करो!


ठीक है, तकनीकी रूप से यह काल्पनिक भाग की गणना करता है ln(-1), लेकिन चूंकि यह विशुद्ध रूप से काल्पनिक संख्या है, इसलिए इसे विभाजित करने के बराबर है i
ज़ाचारि

2

05AB1E , 11 बाइट्स

3•∊&SK•)'.ý

इसे ऑनलाइन आज़माएं!

COMMAND     # CURRENT STACK         | EXPLANATION
------------#-----------------------+-----------------------------------
3           # [3]                   | Push 3.
 •∊&SK•     # [3, 1415926535]       | Push compressed base-255 number 1415926535.
       )    # [[3,1415926535]]      | Wrap the 2 to an array.
        '.  # [[3,1415926535],'.']  | Push a decimal point.
          ý # ['3.1415926535']      | Join 3 and 1415926535 with a decimal point.

बिल्डिंग-आईएनएस का उपयोग करना:

05AB1E , 4 बाइट्स

žq5£

इसे ऑनलाइन आज़माएं!


3žs किसी कारण से काम नहीं करता है ...


@ Zacharý क्या मुझे कुछ याद आया? वह विशेष xD क्यों है?
मैजिक ऑक्टोपस Urn

यह मेरे उपयोगकर्ता नाम में है, और भी, क्या आप एक स्पष्टीकरण जोड़ सकते हैं?
ज़ाचारि

@ ज़ाचारी हा! मेरा दिमाग सभी संभावित मजेदार पीपीसीजी से संबंधित चुटकुलों से गुजर रहा था, जो रिक्त हो सकता है। मैंने बकवास को उखाड़ फेंका।
मैजिक ऑक्टोपस Urn

@ Zacharý ने भी जोड़ा।
मैजिक ऑक्टोपस उर्फ़

यदि मेरा IO निहित होता है, तो हरा करने का कोई तरीका नहीं होगा E3., मैं अब अपने आप पर पागल हूं : पी।
ज़ाचारि



1

जेली , 6 बाइट्स

-ÆAær5

इसे ऑनलाइन आज़माएं!

अन्य जेली उत्तरों की तुलना में एक अलग दृष्टिकोण का उपयोग करता है।

कैसे?

-ÆAउलटा कोसाइन है -1(जो पाई है), ær5आवश्यक अनुभाग को पुनः प्राप्त करता है। यह काम किया ताकि गोलाई इस मामले में छंटनी के बराबर हो



1

पर्ल 5, 40 बाइट्स

}{$\=$\/~(2*$_)*~$_+2for-130..-2

-pMbignum8 के रूप में गिना गया कमांड लाइन विकल्प की आवश्यकता है ।

नमूना हमारा:

$ perl -pMbignum test.pl < /dev/null
3.141592653589793238462643383279502884197

मैं बिना TIO लिंक के माफी माँगता हूँ, यह समर्थन नहीं लगता bignum(या एक बेजोड़ उद्घाटन ब्रेस ...)।


1

MY , 7 बाइट्स

’2ō"8↑↵

इसे ऑनलाइन आज़माएं!

कैसे?

  • , स्टैक के शीर्ष को बढ़ाएं ( 0यदि खाली है, तो स्टैक बनाते हुए पॉप किया जाता है [-1])। (जेली के रूप में एक ही प्रतीक)
  • 2, धक्का 2
  • ō, क्योंकि स्टैक का शीर्ष दो है 2, पॉप को त्यागें , पॉप करें n, फिर पुश करें acos(n)(रेडियन में, यह पी देता है, यह प्रतीक oइसके शीर्ष पर एक नकारात्मक चिन्ह के साथ है। o(सामान्य ट्रिगर के लिए) एपीएल से आता है)।
  • ", स्टैक के शीर्ष तत्व को पॉप करें और इसे एक स्ट्रिंग के रूप में धक्का दें।
  • 8, धक्का 8
  • , aफिर पॉप b, पुश b[:a](यह एपीएल से लिया गया एक और प्रतीक है)।
  • , एक नई लाइन के साथ आउटपुट (OUTPUT <- STACK)।

फिर अंतर्निहित उत्पादन जोड़ें: पी
एमडी एक्सएफ

मैं
एमवाय

1

RPL (HP48), 86.5 बाइट्स, 87 अंक [क्या यह गणना करता है?]

« GROB 8 43
14159265358979323846264338327950288419716939937510582097494459230781640628620899862803
→STR 9 OVER SIZE SUB 2 "." REPL »

GROB एक इमेज कीवर्ड है। 2 संख्याएँ जिनका अनुसरण चौड़ाई और ऊंचाई है। हेक्साडेसिमल अंक जो अनुसरण करते हैं वे बिटमैप हैं। यह प्रत्येक 2 अंकों के लिए 1 बाइट का भंडारण है और छवि मेटाडेटा है।

खाली कार्यक्रम « » 10 बाइट्स लेता है। एक कमांड 2.5 बाइट्स लेता है। एक फ्लोट में 10.5 बाइट्स होते हैं, लेकिन अगर यह सिंगल डिजिट के पूर्णांक के बराबर है, तो यह 2.5 बाइट्स ले सकता है।

HP48 प्रत्येक मेमोरी स्थान पर 8 बिट्स के बजाय 4 स्टोर करता है, इसलिए एक बाइट 2 लगातार स्थानों (कम एंडियन) पर कब्जा कर लेता है। अक्सर 20-बिट चंक्स का उपयोग किया जाता है, और वे 2.5 बाइट्स लेते हैं (3 नहीं)।





0

एक्सेल VBA, 16 बाइट्स

अनाम VBE तत्काल विंडो फ़ंक्शंस जो Excel VBA के STDOUTs में से किसी में भी इनपुट और आउटपुट नहीं लेता है

प्रत्येक पंक्ति एक अलग फ़ंक्शन का प्रतिनिधित्व करती है जो 16 की लंबाई के पीआई देता है

?Mid(4*Atn(1),1)
?Str([Acos(-1)])
Debug.?4*Atn(1);
MsgBox[Acos(-1)]
[A1]="=ACOS(-1)"



0

टीआई-बेसिक, 7 बाइट्स

round(4tan⁻¹(1),6

round(2sin⁻¹(1),6

round(cos⁻¹(-1),6

ये तीनों स्टेटमेंट छपेंगे 3.141593


नोट: TI-BASIC एक टोकन भाषा है। कैरेक्टर काउंट बाइट काउंट नहीं के बराबर होता है ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.