जारी रखने के लिए कोई भी कुंजी दबाएँ


36

आपका काम एक प्रोग्राम है जो निम्न पाठ प्रदर्शित करेगा बनाने के लिए है, इंतजार उपयोगकर्ता एक कुंजी प्रेस करने के लिए (यह ठीक तरह कुंजी अनदेखी करने के लिए है ctrl, alt, caps lock, आदि, जब तक कुंजी की तरह के रूप में letters, numbers, symbols, और enterनजरअंदाज नहीं कर रहे हैं), और फिर कार्यक्रम समाप्त करें:

Press any key to continue... 

अनुगामी newlines की अनुमति है। कुंजी दबाए जाने के तुरंत बाद कार्यक्रम से बाहर निकलना चाहिए। इसके अलावा, कार्यक्रम काफी पोर्टेबल होना चाहिए (यानी कोई ओएस-विशिष्ट हेडर या मॉड्यूल नहीं, एक आईडीई के बाहर चलाता है, आदि)।


जब तक एक अनुगामी नई रेखा से बचा नहीं जा सकता है, तब तक संकेत बिल्कुल ऊपर दिखाया जाना चाहिए।


यह , इसलिए बाइट्स में सबसे कम उत्तर जीतता है। यह मेरा पहला कोड-गोल्फ प्रश्न भी है, इसलिए अगर मैं पीपीसीजी के नियमों को नहीं जानता हूं तो मैं माफी मांगता हूं।


4
क्या आउटपुट टेक्स्ट केस संवेदनशील है? क्या WinBatch PAUSEएक मान्य उत्तर होगा (ellipsis से फैलता ...है . . .)?
फ्लिपकैक

13
इसके अलावा, मैं किसी भी जवाब को स्वीकार करने से पहले एक या दो सप्ताह की प्रतीक्षा करने का सुझाव दूंगा
कृति लिथोस

3
अधिकांश भाषा के pauseकार्य संभवतः कैप्स-लॉक या नियंत्रण (अपने दम पर दबाए गए) जैसी कुंजियों के प्रति असंवेदनशील हैं। शायद आपको यह स्पष्ट करना चाहिए कि क्या कार्यक्रम को उन कुंजियों को नोटिस करने की अनुमति नहीं है
लुइस मेंडो

15
आपको उत्तर स्वीकार करने से पहले कुछ हफ्तों तक इंतजार करना चाहिए, क्योंकि अनगिनत अन्य लोगों ने आपको सलाह दी है (फिर भी आपने उनकी सलाह को अनदेखा करने के लिए चुना है)
फ्लिपकार्ट

12
@JungHwanMin मैं दूसरों से सहमत हूं। कृपया समाधान स्वीकार करने के लिए प्रतीक्षा करें जब तक कि प्रविष्टियों को रोल करना बंद न हो जाए। मुझे वास्तव में प्रतिष्ठा रोलर कोस्टर की सवारी करने का आनंद नहीं मिलता है
स्वेवर

जवाबों:


5

स्मॉलबैसिक, 18 17 बाइट्स

  • संस्करण 2.0

17 बाइट्स

TextWindow.Show()
  • संस्करण 1.0

18 बाइट्स

TextWindow.Pause()

3
क्या आप भी नहीं कर सकते TextWindow.Show()? इस साइट के आधार पर जिसका प्रभाव समान होना चाहिए।
स्वेवर

20

बैच, 46 बाइट्स

@echo Press any key to continue...
@pause>nul

क्योंकि pauseआउटपुट में प्रत्येक से पहले एक स्थान होता है .


5
अच्छा पुनर्निर्देशित। क्या आप आउटपुट को भी भेज सकते हैं, कह सकते हैं x? फिर एक फ़ाइल xबनाई जाएगी जो पाठ को रखती है Press any key to continue . . .। 2 बाइट्स बचाता है, लेकिन मुझे यकीन नहीं है कि अगर यह चुनौती या किसी भी मानक खामियों के खिलाफ जाता है।
स्टेटबेरघ

मैं कुछ समय @choice /n /m Press any key to continue...पहले से ही। Exe-free system पर हूँ, लेकिन मुझे लगता है कि कुछ दशक पहले यह भी संभव था।
मैनटवर्क

चॉइस में J और N के रूप में डिफॉल्ट मान होते हैं, इसलिए जब J या N सही ढंग से याद हो तो प्रोग्राम तभी दबाया जाएगा।
geisterfurz007

@ geisterfurz007 इसके अलावा, डिफ़ॉल्ट मान स्थानीयकृत है। उदाहरण के लिए, मेरे लिए पुर्तगाली में (हाँ के लिए) और (नहीं) के choiceबराबर है । choice /c SNsimnão
इस्माईल मिगुएल

आह, आप ठीक कह रहे हैं, @ geisterfurz007 अब मुझे याद है कि पूरी तरह से वर्णमाला वाले मेरे बैच की फाइलों को कितनी मूर्खता से देखा जाता था। ठीक है, तो यह एक मृत विचार था।
मैनेटवर्क

15

HTML + जावास्क्रिप्ट (ES6), 36 + 25 = 61 बाइट्स

आप वास्तव में एक जावास्क्रिप्ट प्रोग्राम से बाहर नहीं निकल सकते हैं, इसलिए वेबपृष्ठ को साफ़ करना सबसे अच्छा है जिसके बारे में मैं सोच सकता हूं।

onkeyup=_=>a.innerHTML=''
<a id=a>Press any key to continue...


HTML + जावास्क्रिप्ट (ES6), 33 + 28 = 61 बाइट्स

वैकल्पिक समाधान @LarsW द्वारा सुझाया गया है जो इसे पुनर्निर्देशित करता है about:blank

onkeyup=_=>location='about:blank'
Press any key to continue...


HTML / जावास्क्रिप्ट, 60 बाइट्स

@ इस्माइल मिगुएल द्वारा एक और भयानक समाधान जो स्टैंडअलोन जेएस का उपयोग नहीं करता है। 1 बाइट बच गई!

<html onkeyup=this.innerHTML=''>Press any key to continue...


HTML + जावास्क्रिप्ट (ES6), 26 + 28 = 54 बाइट्स

फिर भी @George रीथ द्वारा दस्तावेज़ का उपयोग करते हुए एक और समाधान लिखता है।

onkeyup=_=>document.open()
Press any key to continue...

HTML + जावास्क्रिप्ट (ES7), 23 + 28 = 51 बाइट्स

प्रस्तावित कार्यक्रम ES7 बाँध ऑपरेटर का उपयोग कर :

onkeyup=::document.open
Press any key to continue...


जैसा कि इनमें से अधिकांश समाधान मेरे अपने नहीं हैं, एक शिष्टाचार करें और टिप्पणियों में उन्हें वोट दें!


10
36 + 25 61 है या मैं कुछ याद कर रहा हूं?

2
@LarsW, ckjbgames खैर, क्या संभावना है? आप इसे लिखने तक कभी नहीं जानते! ;)
darrylyeo

2
<html onkeyup=this.innerHTML=''>Press any key to continue...<- 60 बाइट्स। इसे jsfiddle.net/xhb69401 पर देखें (यह दोनों के साथ काम करता है ) <html>और<body>
इस्माइल मिगुएल

2
दस्तावेज़ साफ़ करने के लिए छोटा रास्ता और लंगर की आवश्यकता नहीं है। onkeyup=_=>document.open()साथ Press any key to continue...54 बाइट्स के कुल योग के लिए।
जॉर्ज रीथ

2
इसके अलावा es- अगले प्रस्तावित बाइंड ऑपरेटर के साथ इसे कम किया जा सकता है onkeyup=::document.open
जॉर्ज रीथ

14

MATL, 35 बाइट्स

'Press any key to continue...'D0$Y.

व्याख्या

'Press any key to continue...'      % String literal
D                                   % Display the string (has trailing newline)
0$Y.                                % Pause until the user presses any key

@LuisMendo आह अच्छा पकड़
Suever

2
दूसरी ओर, Y.या तो नहीं है। शायद ओपी को स्पष्ट करना चाहिए। नियंत्रण और कैप्स-लॉक जैसी कुंजी अधिकांश समाधानों में विफल हो जाएंगी
लुइस मेंडो

1
@LuisMendo नियंत्रण कुंजी, कैप लॉक, आदि को याद करना ठीक है
ckjbgames

@LuisMendo क्या आपके संशोधन में प्रवेश कुंजी की आवश्यकता नहीं होगी? या हो सकता है कि मैं इसे याद कर रहा हूँ
स्वेवर

@Suever ओह, बिल्कुल! दर्ज करना आवश्यक है
लुइस मेंडो

11

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

मूल रूप से, यह तब तक लूप करता है जब तक कि एक कुंजी दबाया नहीं जाता है। टीआई-बेसिक में बहुत कम लोअरकेस अक्षर दो बाइट्स हैं ...

Disp "Press any","key to continuesin(
Repeat getKey
End

PS स्पष्टीकरण के लिए @GoldenRatio द्वारा टिप्पणी देखें कि यह कैसे काम करता है। यह प्रतिभाशाली है!


सबसे पहले, आपकी बाइट गिनती वर्तमान में बंद है, जो वास्तव में 55 बाइट्स है (बस टीआई -84 + और परीक्षण पर एक कार्यक्रम बनाया गया है)। दूसरा, यह तकनीकी रूप से मान्य नहीं है, क्योंकि यह जारी रखने के लिए किसी भी कुंजी को प्रदर्शित नहीं करता है ... और इसके बजाय यह 15 वर्णों तक कट जाता है ... इसके बजाय, बाइट की गणना को संरक्षित करते हुए, इसे दो आदेश बनाएं। :Disp "Press any(मत भूलो: आपके कोड में, यह मायने रखता है) और Disp "key to continuesin((पाप नई बलों और विवाद के लिए बनाने के लिए 1 बाइट में एक ... को बल देता है, और यह किसी भी और कुंजी के बीच एक स्थान बचाता है)
गोल्डन अनुपात

मुझे इस पर मारो, पहली भाषा जिसके बारे में मैंने सोचा था।
सी एंडरसन

टिप के लिए धन्यवाद @GoldenRatio, मुझे लगता है कि मैं सोच रहा getKeyथा 2 बाइट्स था जब यह वास्तव में 1. मैं के साथ लगता है Text(या Output(आप यह सब एक लाइन पर फिट कर सकते हैं। लेकिन, आपका सुझाव बेहतर है। मैंने एक पंक्ति के अंत में निहित दीर्घवृत्त का उपयोग करने के बारे में नहीं सोचा था। धन्यवाद फिर से, मैं अभी संपादित करूँगा।
टाइमटेक

इसे अपडेट करने के लिए Thx, और मुझे लगता है कि कॉमा के साथ विवाद का उपयोग करना आखिरकार एक अच्छा कारण है, क्योंकि यह कभी भी बाइट्स को बचाता नहीं है। मैं आमतौर पर स्पष्ट बटन हिट करने की मेरी प्रवृत्ति के कारण उन्हें अलग-अलग लाइनों पर रखता हूं: डी। इसके अलावा, क्या कोई आधिकारिक तरीका है कि आकार कैसे स्कोर किया जाए? इससे मेरा मतलब है कि क्या 9 बाइट्स मुझे प्रोग्राम नाम की गिनती के लिए नहीं गिननी चाहिए ? और प्रारंभ बृहदान्त्र के लिए 1 बाइट को गिना नहीं जा सकता है? मैंने उस चिह्न को 0 बाइट्स के रूप में चिह्नित किया, क्योंकि अंतरिक्ष खोजने के लिए मुझे प्रोग्राम आकार के लिए 10 घटाना करने के लिए उपयोग किया जाता है, लेकिन शायद बृहदान्त्र को गिनना चाहिए।
स्वर्ण अनुपात

नहीं, मूल रूप से यदि आप एक पूरी तरह से खाली प्रोग्राम बनाते हैं तो यह 0 बाइट्स के लिए गिना जाता है, तो आप वहां से शुरू करते हैं। यह एक स्रोत फ़ाइल का फ़ाइल नाम गिनने जैसा होगा। इसके अलावा, शुरुआत बृहदान्त्र सिर्फ दिखाने के लिए है और वास्तव में कार्यक्रम का हिस्सा नहीं है। वास्तव में, प्रत्येक न्यूलाइन स्वचालित रूप से कैलकुलेटर पर संपादक में एक बृहदान्त्र दिखाता है, लेकिन फिर से, ये केवल शो के लिए हैं (मैं क्या मतलब है यह देखने के लिए cemetech sourcecoder का प्रयास करें)। अंतिम, बायटेकाउंट एक ही है कि क्या हम Dispदो लाइनों को विभाजित करते हैं या नहीं (लेकिन, यह हमेशा इस तरह नहीं होता है)।
टिमटेक

8

बाश, ४६ 43 42 बाइट्स

@DigitalTrauma के लिए 1 बाइट का धन्यवाद सहेजा गया

read -rn1 -p"Press any key to continue..."

readबिल्ट-इन का उपयोग करता है। -rयह सुनिश्चित करता है कि यह उपयोगकर्ता को इनपुट से बचने की अनुमति नहीं देता है। -n 1सिर्फ एक चरित्र की अनुमति देता है। -pशीघ्र है


जब तक मैं एक <cr>
ग्लेन Randers-Pehrson

@ GlennRanders-Pehrson मेरा मानना ​​है कि अगर आपका बैश समर्थन नहीं करता है तो ऐसा हो सकता है -n 1। हालांकि यह मेरे लिए प्रवेश के बिना काम करता है (v3.2.57) और मेरी डिबैन मशीन (v4.3.30) पर
डाउनगोट

यह भी काम नहीं करता है अगर मैं एक उद्धरण (")
लिखता

1
काम ठीक है अगर मैं एक फ़ाइल में लाइन डाल (anykey.sh) और वह चला। ठीक भी काम करता है भले ही मैं "-rn" और "1" के बीच की जगह को हटा देता हूं।
ग्लेन रैंडर्स-पीहरसन

1
-rn11 बाइट बचाता है
डिजिटल ट्रॉमा

8

हास्केल , 51 50 बाइट्स (धन्यवाद @ विलाउ 24)

main=putStr"Press any key to continue...">>getChar

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


6
वह प्रवेश की प्रतीक्षा करता है। आप getCharइसके बजाय उपयोग कर सकते हैं ।
क्रिश्चियन सिवर्स

1
आप बीच putStrऔर स्ट्रिंग को हटाकर एक बाइट बचा सकते हैं ।
विलाउ

उत्तरदाता को अपने स्वयं के पोस्ट को संपादित करें, @ckjbgames, उसके लिए ऐसा न करें
MildlyMilquetoast


4

QBasic ( QB64) ), 37 (42?) बाइट्स

दुर्भाग्य से, QBasic के अन्तर्निर्मित प्रोग्राम प्रॉम्प्ट में दीर्घवृत्त नहीं होता है, इसलिए हमें इसे स्वयं प्रिंट करना होगा:

?"Press any key to continue..."
SLEEP

(SLEEP एक तर्क के बिना एक कुंजीपट तक प्रतीक्षा करता है।)

यह कोड वही करता है जो प्रश्न शाब्दिक रूप से पूछता है, लेकिन ऐसा नहीं लगता है कि यह प्रश्न की भावना को फिट करता है, क्योंकि, QBasic तब "जारी रखने के लिए कोई भी कुंजी दबाएं" प्रदर्शित करता है और IDE पर लौटने से पहले एक कुंजीपट की प्रतीक्षा करता है। यहाँ एक है जो सीधे IDE पर जाता है, +5 बाइट्स के लिए:

?"Press any key to continue..."
SLEEP
STOP

STOPएक डिबगिंग स्टेटमेंट है। नियमित QBasic में, यह एक ब्रेकपॉइंट सेट करता है: निष्पादन रुक जाता है और हम IDE पर लौट आते हैं, लेकिन F5 के साथ निष्पादन फिर से शुरू किया जा सकता है। यह स्पष्ट नहीं है कि क्या यह कार्यक्रम "बाहर निकलने" के रूप में गिना जाएगा। हालाँकि, मैं QB64 एमुलेटर का उपयोग कर रहा हूं, जो ब्रेकपॉइंट नहीं कर सकता है। मुठभेड़ होने पर STOP, यह बस रुक जाती है - निरर्थक "किसी भी कुंजी को दबाएं" संदेश के बिना सीधे आईडीई पर लौटना।


विचित्र रूप से पर्याप्त है, 'स्टैंडबाय QB64 exe निष्पादित करते समय' जारी रखने के लिए कोई भी कुंजी दबाएं 'भी दिखाता है। मैं LOCATEइसके बाद डॉट्स प्रिंट करने के लिए उपयोग करने की कोशिश की , लेकिन QBasic पूरी नीचे की पंक्ति को साफ करता है जब वह इस संदेश को प्रिंट करता है ...
steenbergh

4

प्रसंस्करण, 89 81 बाइट्स

void setup(){print("Press any key to continue...");}void draw(){if(key>0)exit();}

व्याख्या

void setup(){print("Press any key to continue...");}

यह आवश्यक है क्योंकि मैं अपने कार्यक्रम में एक से अधिक फ़ंक्शन का उपयोग कर रहा हूं। अंदर कुछ भी setup()कहा जाता है, इस मामले में स्ट्रिंग "Press any key to continue..."

if(key>0)exit();

चेक करता है कि क्या key( keyहमेशा दबाए गए अंतिम कुंजी का अंतर मान होगा) से अधिक है 0(यानी एक शून्य बाइट नहीं)। यदि स्थिति संतुष्ट है, तो कार्यक्रम से बाहर निकलता है।

void draw(){}

draw() यह सुनिश्चित करता है कि प्रोग्राम शुरू होने के बाद प्रोग्राम हमेशा रुकने के बजाय चाबी की तलाश में रहेगा।

(ऐसा महसूस होता है कि जब जावा जैसी भाषा में एक बिल्डिन अभी भी क्रियाशील है ...)


मुझे वास्तव में प्रोसेसिंग की जानकारी नहीं है , लेकिन मुझे लगता है कि आपको void steup(){...}static{...}
पावेल

2
@ पावेल नोप, काम नहीं करते
क्रिस्ति लिथोस

4

पास्कल, 75 65 बाइट्स

यह नि: शुल्क पास्कल संकलक, संस्करण 3.0.0 के साथ परीक्षण किया गया था।
यह TurboPascal 7 या नए के साथ काम कर सकता है।

uses Crt;begin write('Press any key to continue...');readkey;end.

दुख की बात है, मैं बदल नहीं सकते readkeyके साथ readlnके बाद से चुनौती की आवश्यकता है कि किसी भी कुंजी को स्वीकार किया।


मैंने इस कोड को http://rextester.com/l/pascal_online_compiler पर इनपुट के साथ और बिना आपूर्ति के परीक्षण किया है ।
जैसा कि अपेक्षित था, 10 के बाद कार्यक्रम को समाप्त कर दिया जाता है, क्योंकि यह एक कीपर के इंतजार में बैठता है जो कभी नहीं होता है।


मुझे गलत साबित करके 10 बाइट बचाने के लिए @manatwork के लिए धन्यवाद , और दिखा रहा है कि मुझे इसकी आवश्यकता नहीं है program _;


न तो FreePascal और न ही TurboPascal को programकीवर्ड के उपयोग की आवश्यकता है । (वास्तव में मैं कभी भी इस तरह के प्राचीन कार्यान्वयन से नहीं मिला।)
मैनेटवर्क

@ मैनटवर्क मैंने इसके बिना कोशिश की programऔर इसने शिकायत की। इसके अलावा, मैं कभी-कभी TurboPascal का उपयोग करता हूं। उस एक की आवश्यकता है (नोटिस: की आवश्यकता है ) program। यदि आप किसी भी स्थान को जानते हैं तो मैं यह परीक्षण कर सकता हूं कि यह बिना किस स्थान पर चलता है program, मैं इसे हटा दूंगा। मुझे उससे नफरत है। और वह uses Crt;
इस्माइल मिगुएल

1
मैं तुम्हें नहीं मिलता यह ठीक से काम करता है जिसमें आपके द्वारा लिंक किए गए rextester सेवा भी शामिल है। मेरी कमांड लाइन में: pastebin.com/pVr9dqxd
manatwork

@manatwork तुम सही हो। मुझे पता है कि इसकी शिकायत क्यों हुई: मैंने program;वास्तव में उस बिट को हटाने के बजाय लिखा था । मुझे इसके लिए सचेत करने के लिए धन्यवाद।
इस्माइल मिगुएल

4

स्क्रैच, 81 बाइट्स

छवि

when gf clicked
say [Press any key to continue...
wait until <key [any v] pressed

( स्क्रैचब्लॉक्स लिंक )

यदि आप चाहते थे कि जब आप एक कुंजी (अन्य थ्रेड्स सहित) दबाएंगे तो आपको पूरे प्रोग्राम को रोकना होगा stop all। यदि आप उक्त डायलॉग से छुटकारा चाहते हैं तो आपको एक खाली sayब्लॉक की आवश्यकता है (stop all साथ ही काम करता है) की आवश्यकता है।

सुविधाजनक है कि स्क्रैच में इसके लिए एक बेसिन है!


4

बैश 48 44 42 बाइट्स

read -rn1 -p"Press any key to continue..."

@ mame98 4 बाइट बचाने के लिए धन्यवाद।

@RaisingAgent 2 बाइट बचाने के लिए धन्यवाद।


आप झंडे को जोड़कर इसे सुधार सकते हैं, जैसे read -srn1 -p".."प्रोम कोट में अंतिम स्थान को हटा सकते हैं। इसके अलावा, मुझे यकीन नहीं है कि आपको
mame98

1
उद्धरणों में अंतिम स्थान निकालें_-s
RaisingAgent

@RaisingAgent धन्यवाद, अद्यतन :)
हाबिल टॉम


3

रूबी (2.3) (+ बैच), 52 55 54 53 46 बाइट्स

अब एलेक्सिस एंडरसन को 46 बाइट्स धन्यवाद।

नोट: यदि कोई pauseआदेश नहीं है, तो विंडोज पर परीक्षण किया जा सकता है ।

puts"Press any key to continue...";`pause>nul`

व्याख्या

Puts आवश्यक पाठ:

puts"Press any key to continue..."

पंक्ति समाप्त करें:

;

बैच pauseकमांड और पाइप आउटपुट को nulनिम्न पर चलाएँ :

`pause>nul`

नमस्कार, PPCG में आपका स्वागत है। मैं देखता हूं कि आपके पास आपके सबमिशन के शरीर में संपादन की एक सूची है। हालांकि यह अन्य साइटों पर प्रथागत हो सकता है, क्योंकि कोई भी किसी पोस्ट के संपादन इतिहास को देख सकता है, हम आम तौर पर पोस्ट के इतिहास को शरीर से बाहर छोड़ देते हैं (बाइट काउंट के लिए स्ट्राइक थ्रू से अलग)। यह एक अच्छा पहले गोल्फ की तरह लगता है और मुझे उम्मीद है कि आप यहाँ मज़े करेंगे।
गेहूं जादूगर

@HeatWizard धन्यवाद, क्या मुझे वहाँ संपादन छोड़ देना चाहिए या उन्हें हटा देना चाहिए?
notme1560

1
मुझे लगता है कि यह बहुत अधिक पठनीय उत्तर के लिए बनाता है यदि आप उन्हें हटाते हैं और मैं व्यक्तिगत रूप से ऐसा करने की सलाह दूंगा।
गेहूं जादूगर

आप सिस्टम को बैकटिक्स के साथ बदलकर छोटा कर सकते हैं: ` pause>nul` या उससे भी कम, बस उपयोग हो जाता है (भी, एक टिप्पणी में एक कोड ब्लॉक में एक बैकटिक को शामिल करने का कोई अच्छा तरीका नहीं है)
एलेक्सिस एंडरसन

@AlexisAndersen getsप्रवेश की प्रतीक्षा नहीं करता है , और न ही कोई कुंजी?
notme1560

3

जावा, 127 बाइट्स

class P{public static void main(String[]a)throws Exception{System.out.print("Press any key to continue...");System.in.read();}}

नोट: इस कार्य के लिए कंसोल को कच्चे मोड पर सेट किया जाना चाहिए


तो मुझे डर लग रहा अपने कोड तो कंसोल स्थापित करना चाहिए, जैसे original.legin के पर्ल समाधान करता है।
मैनटवर्क

@manatwork Also, the program must be fairly portable (i.e no OS-specific headers or modules, runs outside of an IDE, etc.)यदि आप उस SO लिंक का अनुसरण करते हैं तो ऐसा करने के लिए कोई OS- स्वतंत्र तरीका नहीं है। मतलब, आपके द्वारा जोड़ा गया उत्तर भी उतना ही मान्य है जितना कि यह।

3

स्माइलबासिक, 52 बाइट्स

?"Press any key to continue...
WHILE""==INKEY$()WEND

3

पायथन 2, 110 बाइट्स

import curses as c
s=c.initscr()
c.cbreak()
s.addstr(0,0,'Press any key to continue...')
while not s.getch():1

2

गणितज्ञ, 62 बाइट्स

EventHandler["Press any key to continue...","KeyDown":>Exit[]]

व्याख्या

EventHandler["Press any key to continue...","KeyDown":>Exit[]]
EventHandler[                                                ]  (* Create a new EventHandler *)
             "Press any key to continue..."                     (* Print the dialog text *)
                                            "KeyDown":>Exit[]   (* When a key is pressed down, exit *)

2

स्माइलबासिक, 55 बाइट्स

?"Press any key to continue..."@L IF INKEY$()!=""GOTO@L

व्याख्या की:

?"Press any key to continue..."  '? means PRINT
@L                               'start of loop
IF INKEY$()!="" GOTO @L          'if no key pressed goto @L

WHILE""==INKEY$()WENDछोटा है
12M2121

2

पायथन 2/3 पोसिक्स, 85 बाइट्स

import sys,tty
print('Press any key to continue...')
tty.setraw(1)
sys.stdin.read(1)

2

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

पायथन के विंडोज संस्करण की आवश्यकता है।

from msvcrt import*
print("Press any key to continue...")
getch()

msvcrt.getch () इनपुट की तरह दबाए जाने वाली एंटर कुंजी का इंतजार नहीं करता (), यह पहली कुंजी को दबाया गया है।

Msvcrt.getch () के लिए पायथन डॉक्स: https://docs.python.org/3/library/msvcrt.html#msvcrt.getch

कुछ बाइट्स बचाने के लिए @Fliptack का धन्यवाद


यह उत्तर import msvcrtकहीं न कहीं अमान्य है
फ्लिपकार्ट

2
जैसा कि यह कोड-गोल्फ है आपको अपने कोड से टिप्पणियों को हटा देना चाहिए। इसके अलावा, प्रयोग from msvcrt import* 1 बाइट से छोटा प्रतीत होता है
18

शांत, thx @FlitTack
ज़ाचरी स्मिथ

2

नोड.जेएस, 102 101 99 बाइट्स

with(process)stdout.write('Press any key to continue...'),s=stdin,s.setRawMode(1),s.on('data',exit)

ज्यादा फायदा नहीं, सिर्फ 1 किरदार से छोटा with: pastebin.com/BhrAyq2K
manatwork

@manatwork एक अच्छा! पहली बार withमुझे बाइट्स (या बाइट) ने बचाया है
जॉर्ज रीथ

1
अब आप घुंघराले कोष्ठक को हटा सकते हैं और 2 और बाइट्स के लिए अल्पविराम के साथ लाइन ब्रेक की जगह ले सकते हैं।
darrylyeo

इसके अलावा अगर मैं गलत नहीं हूँ, stdout.write`Press any key to continue...`तो ES6 में 2 बाइट्स बचाएंगे।
darrylyeo

@darrylyeo कॉमास काम बहुत बढ़िया धन्यवाद! दुर्भाग्य से एक टैग किए गए टेम्प्लेट शाब्दिक का उपयोग यहां नहीं किया जा सकता है क्योंकि यह वास्तव में एक सरणी में गुजरता है और process.stdout.writeस्ट्रिंग के लिए निहित रूपांतरण नहीं करता है (यह सिर्फ त्रुटियां हैं)।
जॉर्ज रीथ

2

सिंक्लेयर ZX81 / टाइमेक्स TS1000 बुनियादी: विधि 1 लगभग 41 बाइट्स

1 PRINT "PRESS ANY KEY TO CONTINUE..."
2 GOTO (INKEY$<>"")+VAL "2"

विधि 2 लगभग 38 BYTES

1 PRINT "PRESS ANY KEY TO CONTINUE..."
2 PAUSE VAL "4E4"

मैं ZX81 पर विधि 1 को पसंद करता हूं, जब PAUSEबुलाया जाता है तो एक स्क्रीन झिलमिलाहट होती है, और यदि आप लंबे समय तक पर्याप्त चाहते हैं (जेडएक्स81 को ओवरहीट या क्रैश नहीं होता है) तो ठहराव अंततः समाप्त हो जाएगा, जबकि विधि 1 अंदर अटक गई है एक कुंजी दबाए जाने तक एक अनंत लूप, और कोई स्क्रीन झिलमिलाहट नहीं।

मैं बाद में उपयोग किए जाने वाले बाइट्स की सही संख्या का उपयोग करूँगा जब मेरे पास सही बीआईसीआईसी होगा जो मुझे बताएगा। वैसे, नंबर के बजाय वैल "x" का उपयोग करने से एक ZX81 पर मूल्यवान रैम की बचत होती है (मुझे लगता है कि यह ZX स्पेक्ट्रम के लिए भी ऐसा ही है)।


दोनों विधियां सिंक्लेयर जेडएक्स स्पेक्ट्रम पर भी काम करेंगी, इसका फायदा यह है कि स्पेक्ट्रम में ऊपरी और निचले मामले पत्र हैं, जबकि जेडएक्स81 डिफ़ॉल्ट रूप से नहीं है (और मानक चरित्र के रूप में एक भी उद्धरण नहीं है)।
शॉन बेबर्स

सिनक्लेयर ZX स्पेक्ट्रम पर विधि 2 को संघनित किया जा सकता है 1 PRINT "Press any key to continue...": PAUSE 4e4
शॉन बेबर्स

1
PAUSE 0हमेशा के लिए विराम।
नील

हां, मैंने सिनक्लेयर स्पेक्ट्रम बेसिक में इतने लंबे समय तक प्रोग्राम नहीं किया है कि मैं इसके बारे में भूल गया। PAUSE 0ZX81 में बेसिक हमेशा के लिए विराम नहीं देता है।
शॉन बेयबर्स

1

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

system "stty cbreak";$|=1;print "Press any key to continue...";read(STDIN,$a,1)

इसके समान इस्तेमाल किया:

perl -e 'system "stty cbreak";$|=1;print "Press any key to continue...";read(STDIN,$a,1)'

बेशक कोई पुरस्कार नहीं। मुझे यकीन है कि कुछ प्रति व्यक्ति एक बेहतर तरीका होगा।

(89 बाइट्स यदि दुभाषिया आह्वान के साथ-साथ गिनती में शामिल होने की आवश्यकता हो)


@ फावले, वह systemअपने बाइटकाउंट में गिना जाता है, इसलिए मुझे नहीं पता कि आपका उस टिप्पणी से क्या मतलब है।
दादा

1
@ original.legin मुझे लगता है कि पर्ल इससे बेहतर नहीं करेंगे। कुछ बाइट्स आप अभी भी गोल्फ कर सकते हैं: $|=1आवश्यक नहीं है, आपके पास एक जगह है print, आप के तर्कों के आसपास कोष्ठक को छोड़ सकते हैं read, आप सिस्टम के बजाय बैकटिक्स का उपयोग कर सकते हैं, और अंत में, print1 रिटर्न देता है, इसलिए आप इसके बजाय इसका उपयोग कर सकते हैं करने के 1लिए कॉल में कूड़े read। तो अंत में, हमें मिलता है:perl -e '`stty cbreak`;read STDIN,$a,print"Press any key to continue..."'
दादा

@ डाडा आप 2 बाइट से भी शेव कर सकते हैं say, हालांकि मुझे लगता है कि यह दृष्टिकोण "पोर्टेबल" आवश्यकता को विफल करता है। सबसे अच्छा पोर्टेबल समाधान जो मैं पा सकता हूं, वह है perl -MTerm::ReadKey -E'say"Press any key to continue...";ReadMode 3;ReadKey'(52 बाइट्स + 16 बाइट्स के लिए -MTerm::ReadKey<space>)। सावधान रहें, यह आपके टर्मिनल को तब तक खराब करेगा जब तक आप अंत में रीड मोड को पुनर्स्थापित नहीं करते ReadMode 1
ThisSuitIsBlackNot 19

1
@ThisSuitIsBlackNot वास्तव में, मैंने पोर्टेबिलिटी के बारे में उस आवश्यकता को नहीं देखा है। के बारे में say, मैं इसे अब और उपयोग नहीं कर सकता (मैं ज्यादातर इस मेटा पोस्ट से सहमत हूं )। अब एक छोटे कोड पर वापस, (40 + 13 = 53 बाइट्स) IO::Promptसे कम होगा :। और जैसा कि होता है, यह मेरी पिछली टिप्पणी में सुझाए गए से भी कम है। Term::ReadKeyperl -MIO::Prompt -e 'prompt"Press any key to continue... ",-1'
दादा

1
@ दादा मैं दोनों पक्षों के -Eतर्क देख सकता हूं । पिछली बार जब मैंने जाँच की थी, हालांकि, जेबी का जवाब चार साल से निर्विरोध था, इसलिए मैंने उसका अनुसरण किया। शायद मुझे इसे फिर से देखने की ज़रूरत है। IO :: शीघ्र के लिए, अच्छा लगता है! हालाँकि यह विंडोज पर मेरे स्ट्रॉबेरी 5.20.2 पर काम नहीं करता है, जबकि टर्म :: ReadKey करता है।
ThisSuitIsBlackNot

1

PHP, 73 बाइट्स

echo"Press any key to continue...";$h=fopen("php://stdin","r");fgets($h);

PHP इंटरेक्टिव शेल में इसे चलाएं ( php -a)


"कार्यक्रम को एक कुंजी दबाए जाने के तुरंत बाद बाहर निकलना चाहिए।" - यह दर्ज करें या ब्लैकआउट होने तक प्रतीक्षा करता है ...
manatwork

1

सी #, 101 बाइट्स

using C=System.Console;class P{static void Main(){C.Write("Press any key to continue...");C.Read();}}

लिनक्स पर परीक्षण किया गया, किसी भी सिस्टम पर होना चाहिए। .NET लाइब्रेरी और कॉमन लैंग्वेज रनटाइम।

अनप्लग्ड प्रोग्राम:

using C = System.Console; // creating a shorter alias for the System.Console class

class P
{
    static void Main()
    {
        C.Write("Press any key to continue...");    // prints the message
        C.Read();   // waits for key press
    }
}

CTRL, ALT, SHIFT को अनदेखा किया जाता है। यदि प्रिंट करने योग्य है तो दबाए गए कुंजी को स्क्रीन पर प्रतिध्वनित किया जाएगा।

इको को 6 और बाइट्स की कीमत पर C.ReadKey (0 <1) के साथ C.Read () को प्रतिस्थापित करके अक्षम किया जा सकता है ।


1

8 वें , 47 बाइट्स

"Press any key to continue..." . cr con:key bye

यह प्रोग्राम ctrl, alt, caps lock जैसी कुंजियों को नजरअंदाज करता है। अक्षरों, संख्याओं, प्रतीकों, और दर्ज करें जैसी कुंजी के साथ छोड़ता है।

व्याख्या

"Press any key to continue..." . cr \ Print message 
con:key                             \ Wait for key input from console  
bye                                 \ Quit program 

विंडोज पर केवल आप 3 बाइट्स को छोड़ने से बचा सकते हैंcr
Chaos Manor

1

सी #, 29 बाइट्स

class P{static void Main(){}}

यकीन नहीं होता अगर इसे मान्य माना जाता है क्योंकि यह प्रिंट करता है:

जारी रखने के लिए किसी भी कुंजी को दबाएं । । ।

लेकिन एक बैच जवाब है कि यह भी प्रिंट करता है।


1

फोर्थ (gforth), 39 बाइट्स

." Press any key to continue..."key bye

(हां, पहले से ही एक 8 वां समाधान है लेकिन यह छोटा है)

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