प्रत्येक स्वर का उपयोग किए बिना वर्णमाला प्रिंट करें


72

प्रेरणा : 1939 में, अर्नेस्ट विन्सेंट राइट नामक एक व्यक्ति ने 'ई' अक्षर का उपयोग किए बिना गडस्बी नामक एक उपन्यास लिखा ।

आपका कार्य किसी भी भाषा में (5 तक) कार्यक्रमों का एक सेट लिखना है (जिसमें पाठ-आधारित वाक्यविन्यास * है) ताकि वर्णमाला के सभी 26 अक्षरों को क्रम में आउटपुट किया जा सके। हालांकि प्रत्येक स्वर अइयौ के लिए, कम से कम एक कार्यक्रम में स्वर की कोई भी घटना शामिल नहीं होनी चाहिए।

तो होना ही चाहिए

  • एक प्रोग्राम जो प्रोग्राम के सिंटैक्स में कहीं भी ' a ' या ' A ' का उपयोग नहीं करता है ।
  • एक प्रोग्राम जो प्रोग्राम के सिंटैक्स में कहीं भी ' ' या ' ' का उपयोग नहीं करता है ।
  • एक प्रोग्राम जो प्रोग्राम के सिंटैक्स में कहीं भी ' i ' या ' I ' का उपयोग नहीं करता है ।
  • एक प्रोग्राम है जो 'का उपयोग नहीं करता ' या ' हे ' कार्यक्रम की वाक्य रचना में कहीं भी।
  • एक प्रोग्राम जो प्रोग्राम के सिंटैक्स में कहीं भी ' यू ' या ' यू ' का उपयोग नहीं करता है ।

उन सभी को आउटपुट करना होगा abcdefghijklmnopqrstuvwxyz

विजेता वह समाधान होगा जहां सभी कार्यक्रमों की लंबाई सबसे कम होती है।

* चूंकि बाधा Piet या व्हॉट्सएप में एक चुनौती नहीं होगी


वर्तमान रैंकिंग (06 मार्च 2014):


4
@ w0lf: नहीं, यह "5 कार्यक्रमों तक" और "सभी कार्यक्रमों की लंबाई" कहता है, जिसे मैंने "केवल एक कार्यक्रम के रूप में पढ़ा है और इस मामले में इसकी लंबाई मायने रखती है"।
श्नाडर

9
@PeterTaylor: आपको नहीं लगता कि अपने वाक्यविन्यास में स्वरों का उपयोग करने से बचना एक अनोखी चुनौती है? JS प्रोग्रामर के रूप में, यह विशेष रूप से दिलचस्प है :)
mellamokb

2
क्या उत्पादन में नए सिरे स्वीकार्य हैं (यानी प्रति वर्ण एक)? मैं अपने कुछ कोड को छोटा कर सकता हूं अगर ऐसा है ...
गफी

2
अपरकेस आउटपुट की अनुमति है?
आउटगॉल्फ

2
मैं ओपी हूं। अपरकेस की अनुमति नहीं है।
Shamp00

जवाबों:


48

गोल्फस्क्रिप्ट - 8 वर्ण

123,97>+

8
लानत है, वास्तव में घालमेल के मामले में गोल्फ को नहीं हरा सकते ...
पैट्रिक ऑसिटी

18
कहा जा रहा है, पठनीयता पागल की तरह बदबू आ रही है।
एंड्रयू ग्रे

5
यह बुरा नहीं है;) 123 नंबरों की एक सूची तैयार करें, उन लोगों को हटा दें जो 97 से अधिक नहीं हैं, इसे एक स्ट्रिंग के लिए (संख्याओं की श्रेणी) के साथ मिलाएं।
मैकके

3
91,65>+इसके बजाय उपयोग करें ।
आउटगॉल्फ


23

PHP, 31 बाइट्स

ए, ई, आई, ओ, यू:

<?=~žœ›š™˜—–•”“’‘ŽŒ‹Š‰ˆ‡†…;

टिल्ड के बाद बाइनरी स्ट्रिंग में निम्न हेक्स प्रतिनिधित्व है:

\x9e\x9d\x9c\x9b\x9a\x99\x98\x97\x96\x95\x94\x93\x92\x91\x90\x8f\x8e\x8d\x8c\x8b\x8a\x89\x88\x87\x86\x85

चूंकि भाषा स्कोरबोर्ड है, इसलिए मैं इसे भी प्रस्तुत कर सकता हूं:

रूबी (v1.8) 18 बाइट्स

$><<[*97.chr..'z']

मुझे यकीन नहीं है कि मैं समझता हूं कि यह कैसे काम करता है। क्या मुझे स्पष्टीकरण मिल सकता है?
श्री ललामा

जब एक स्ट्रिंग पर लागू किया जाता है, ~ ऑपरेटर बिट्स के सभी को निष्क्रिय कर देता है। यहाँ मैं एबीसी उलटा हूँ ... xyz। क्योंकि बाइनरी स्ट्रिंग में कोई प्रतीक वर्ण (या व्हाट्सएप) नहीं हैं, उद्धरण आवश्यक भी नहीं हैं।
प्रिमो

1
आप अपने पास जो कुछ भी है उसके लिए एन्कोडिंग निर्दिष्ट करना चाह सकते हैं।
जॉय

1
iso-8859-1। जब पोस्ट किया गया था, तो तीन 'अप्राप्य' अक्षर हटा दिए गए थे, यही वजह है कि मैंने हेक्स को शामिल किया।
प्रिमो

2
अच्छा और शायद सबसे कम संभव PHP संस्करण। फ़ाइल बनाने के लिए एक कमांड php -r 'echo("<?=~\x9e\x9d\x9c\x9b\x9a\x99\x98\x97\x96\x95\x94\x93\x92\x91\x90\x8f\x8e\x8d\x8c\x8b\x8a\x89\x88\x87\x86\x85;");' > script.php:। इसे चलाने की आज्ञा php -d error_reporting=0 script.php; echo:।
अक्षीय

16

रूबी ( 24 22)

संपादित करें: कोष्ठक छोड़ा जा सकता है, 2 चार्ट कम:

$><<'%c'*26%[*97..122]

रूबी में 24 वर्ण:

$><<('%c'*26)%[*97..122]

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

$>के लिए एक उपनाम है $stdoutया STDOUT। आप <<ऑपरेटर का उपयोग करके इसे लिख सकते हैं । यह शब्द 26 बार '%c'*26स्ट्रिंग को दोहराता है '%c'%ऑपरेटर के लिए एक उपनाम के रूप स्ट्रिंग पर परिभाषित किया गया है sprintf, तो str % valलेखन के बराबर है sprintf(str,val)। फॉर्मेट कैरेक्टर %cका उपयोग चार मूल्य को चार में बदलने के लिए किया जाता है। इन मूल्यों से आता है, [*97..122]जो 97 से 122 के मान वाले एक सरणी बनाता है।


बहुत अच्छा। मैं उपयोग करने का एक तरीका ढूंढ रहा था <<लेकिन भूल गया था $>
मार्क रीड

1
मैं $>पहले भी नहीं जानता था , लेकिन मैंने अनुमान लगाया कि इसके लिए कुछ डॉलर-वैरिएबल उर्फ ​​होना चाहिए $stdoutजो किसी को याद न हो :)
पैट्रिक ऑस्सिटी

21 अक्षर: $><<[*"`".."z"][1,26](ध्यान दें: यह केवल रूबी 1.8 में काम करता है)
वेंटरो

@Ventero रूबी 1.8 में ही नहीं, रूबी 1.9.2 में भी काम करता है। लेकिन p [*"".." z "] [1,26] का उपयोग करना और भी कम है।
हौलेथ

@ हौलेथ: नहीं, इसे 1.9 में चलाने से सही आउटपुट नहीं मिलता है, जैसा कि 1.9 में Array#to_sहै Array#inspect, जबकि 1.8 में यह है Array#join- इसलिए 1.9 में आउटपुट ["a", "b", "c", "d", "e", ...]इसके बजाय है abcdef...। उसी कारण से, pइसका उपयोग नहीं किया जा सकता (यह inspectइसके बजाय इसके तर्कों पर कॉल करता है to_s)।
वेंटरो सेप

16

अजगर , 1 चरित्र

G

पायथ कुछ चर को पूर्वनिर्धारित करता है। G को लोअरकेस वर्णमाला के रूप में पूर्वनिर्धारित किया जाता है। पाइथ ने प्रत्येक लाइन को एक उचित रिटर्न वैल्यू के साथ प्रिंट भी किया है।


3
निंजा मुझे 3 साल तक ...
स्टेन

15

जावास्क्रिप्ट (100)

कोई 'aeou':

this['\x61l\x65rt']('\x61bcd\x65fghijklmn\x6fpqrst\x75vwxyz')

नहीं 'i':

alert('abcdefgh\x69jklmnopqrstuvwxyz')

+1 मेरे उत्तर पर अच्छा सुधार :) मैंने \x##कोड का उपयोग करने के बारे में सोचा था, लेकिन यकीन नहीं था कि वे जावास्क्रिप्ट में मान्य थे।
मेलमोकब

आखिर अलर्ट क्यों? एक js टर्मिनल पर, ऑब्जेक्ट्स स्वचालित रूप से गूंजेंगे। ('\ x61bcd \ x65fghijklmn \ x6fpqrst \ x75vwxyz') @ ४२ अक्षर।
एंटनी.ट्रूप

3
@ antony.trupe, कोड गोल्फ के लिए, IO आमतौर पर IO तंत्र (या सामान्य प्लगइन्स) में निर्मित भाषा के माध्यम से किया जाता है। जे एस के लिए यह आम तौर पर है alert, confirm, prompt, console.log, और document.write। बस एक स्ट्रिंग शाब्दिक की घोषणा करते हुए इसे आउटपुट के रूप में निष्पादित नहीं किया जाता है। अन्यथा, आप सही होंगे, और मैंने इसका इस्तेमाल किया होगा।
zzzzBov

यह गूगल क्रोम कंसोल में आउटपुट (परिभाषा के अनुसार मैं वैसे भी उपयोग करता है) का उत्पादन करता है, लेकिन मैं इस मुद्दे को स्वीकार करता हूं; शुरू करने के लिए यह एक मनमाना प्रतिबंध है।
antony.trupe

@ antony.trupe, PHP जैसी भाषा में आप शाब्दिक रूप से उपयोग करने में सक्षम होंगे, क्योंकि यह IO करता है।
zzzzBov

15

कश्मीर, 9

_26#.Q.b6

कश्मीर, 10

"c"$97+!26

कश्मीर, 14

.:".Q.","c"$97

2
और एक मूर्खतापूर्ण तरीका है जिसमें कोई अक्षर नहीं है (12 वर्ण):(@$`)$97+!26
हारून डेविस

1
K5 रास्ता लगभग आपका दूसरा समाधान है, लेकिन $इस प्रकार को नियंत्रित करने के लिए तार के बजाय प्रतीक लेता है: `c $ 97 +! 26
JohnE

15

जे, २६ २३ १, १६ अक्षर

एक घंटे या तो जे के अंडरवियर दराज में चारों ओर अफवाह के बाद मैं अंत में a.और u:क्रिया को खत्म करने का एक तरीका मिल गया है ।

2(3!:4)96+#\26$1

पहले:

a.{~96++/\26$1
u:97+i.26

चाल के लिए यादृच्छिक के लिए धन्यवाद #\


अच्छा समाधान! के #\ बजाय 1 का उपयोग कर के साथ छोटा करने के लिए प्रबंधित +/\
रैंडम

5
मेरे अंडरवियर के दराज से बाहर निकलो
जो


12

बैश (38)

कोई स्वर नहीं।

/*/*/*ntf "/*/?ch? {\x61..z}"|/*/b?sh

यह प्रोग्राम मेरे सिस्टम पर विफल है, क्योंकि / * / b? Sh मौजूद नहीं है। मेरे पास / usr / लोकल / बिन / बैश है, न कि बिन / बैश।
कर्नेल

2
खोल गोलाबारी का अच्छा उपयोग!
मैकेनिकल घोंघा

@ कर्ने[[ ! -d "/bin" ]] && mkdir "/bin"; sudo cp "/usr/local/bin/bash" "/bin/bash"
स्टैन

/bin/shबैश होगा तो बेहतर होगा । फिर कोड /*/sh(36 बाइट्स) के साथ समाप्त हो सकता है । लेकिन मुझे ऐसा सिस्टम नहीं मिला है जहां यह काम करे। डेबियन में, बिन / श मार नहीं है। मेरे पुराने मैक में, बिन / श bash 2.05b0 है। (1), लेकिन यह संस्करण बहुत पुराना है और इसका विस्तार नहीं हुआ है {a..z}
21

11

C, 90 88 84 वर्ण

संकलन का उपयोग करें gcc -nostartfiles

b;_exit(){for(;b<26;)printf("%c",b+++97);}    // 42 chars, works for a, u
b;_start(){putchar(b+++97)>121?:_start();}    // 42 chars, works for e, i, o

_startऔर _exitचारों ओर पाने के लिए एक अच्छा तरीका है main। लेकिन अगर एक गैर-मानक संकलन लाइन ठीक है, तो क्यों नहीं -DX=main?
12

4
किसी भी तरह, (मेरे लिए) -DX=mainसे भी बदतर लगता है -nostartfiles। यह स्रोत कोड के एक भाग को संकलन लाइन में स्थानांतरित करने का एक तरीका है और यह #define X mainस्रोत कोड में लिखने के समान है जो स्पष्ट रूप से अमान्य होगा। जबकि -nostartfilesनाम बदलने का कोई तरीका नहीं है main, लेकिन प्रतिबंध को हटा दिया जाता है कि एक mainफ़ंक्शन (जिसे में कहा जाता है _start) होना चाहिए । दूसरी ओर, उपयोग करने से -nostartfilesधोखा
खाने

यह एक फिसलन ढलान है ... से दूरी -nostartfilesके लिए -DX=mainछोटा है, और फिर क्यों के साथ कुछ वर्ण नहीं बचा -DX=main()और इसके आगे। लेकिन मुझे ऐसा समाधान नहीं मिल रहा है जिसमें कुछ भी गड़बड़ न हो।
ugoren

वहाँ कोई रास्ता नहीं है कि आप मुख्य समारोह को "mn" उदाहरण के लिए परिभाषित कर सकते हैं?
नील

@ नील, केवल कुछ ऐसा करके -Dmn=mainmainजब तक गैर-मानक विकल्प -nostartfilesका उपयोग नहीं किया जाता है तब तक एसी फ़ंक्शन का एक फ़ंक्शन होना चाहिए ।
मैथ्यू फ्लैशेन


9

रूबी, 20 वर्ण

$><<[*97.chr..?z]*''
  • 97.chr 'क' कहने का एक विस्तृत तरीका है
  • .. एक सीमा निर्दिष्ट करता है
  • ?z "z" कहने का एक छोटा तरीका है
  • [*range]श्रेणी को अलग करने का कारण बनता है यह एक सरणी में मान है
  • *''के रूप में ही है join(''); यह सभी सरणी मानों को एक साथ glues करता है।
  • $><< Perlicism: प्रिंट टू स्टडआउट।

यह कोड काम नहीं करता है। ?zके लिए आशुलिपि नहीं है 'z', बल्कि इसके लिए 122। यह, हालांकि, 18 बाइट्स के लिए काम करता है:$><<[*97.chr..'z']
प्राइमो सेप


1
मैंने 1.9.3 डाउनलोड किया ... और आप सही हैं। वे ऐसा कुछ क्यों बदलेंगे? मैं देख सकता हूँ कि क्यों अराजकता गोल्फ अभी भी 1.8.7 चल रहा है। वैसे भी, 18 बाइट समाधान v1.8.7- के लिए काम करता है
प्राइमो

2
(4 साल बाद ...) आप बदल सकते हैं 97.chrके साथ ?\x61के लिए -1 बाइट।
जॉर्डन

9

dc: 18 17 वर्ण

97[dP1+dBD>m]dsmx

और एक बहादुर चरित्र मर गया।


मुझे शक है। मैं इसके चारों ओर सिर लपेट रहा हूं और मुझे इसे छोटा करने का कोई रास्ता नहीं दिख रहा है। मैं बिल्कुल उसी समाधान के साथ समाप्त हो गया हूं, जब मैंने xरजिस्टर के लिए उपयोग किया था , जो मेरा समाधान अधिक बाधित करता है।
हाइनेक -पिची- विचोडिल

3
97[dP1+dBD>m]dsmx, 17 वर्ण। जाहिरा तौर पर आप हमेशा डीसी में हेक्साडेसिमल वर्ण दर्ज कर सकते हैं, लेकिन जैसा कि इनपुट बेस दस है मान है B*10+D=11*10+13=123='{', और 0-0BD नहीं है।
फोर्स

ओह, अच्छा
ग्लिच

9

पॉवरशेल, 75 62 अक्षर

संपादित करें: प्रयुक्त -f (String.Format) और सरणी अनुक्रमण कोड की लंबाई को काफी कम करने के लिए।

'{0}bcd{1}fgh{2}jklmn{3}pqrst{4}vwxyz'-f"$(1|gm)"[8,10,0,5,31]

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

gmके लिए एक उपनाम है get-members, इसलिए 1|gmमूल्य के सदस्य लौटाता है 1, जो इस System.Int32प्रकार है:

PS C:\> 1|gm
   TypeName: System.Int32
Name        MemberType Definition
----        ---------- ----------
CompareTo   Method     int CompareTo(System.Object value), int CompareTo(int value)
Equals      Method     bool Equals(System.Object obj), bool Equals(int obj)
GetHashCode Method     int GetHashCode()
...

"$(1|gm)"उपरोक्त सूची का एक स्ट्रिंग प्रतिनिधित्व लौटाता है, जिसमें सभी वर्णों को शामिल करना होता है जिन्हें हमें वर्णमाला को पूरा करने की आवश्यकता होती है: " int C omp ar eTo (System.Object val ue) ..."


2
यह स्थिर नहीं है यदि MS System.Int32 में सदस्यों को जोड़ता है, हालांकि :-)
जॉय

मुझे लगता है कि ऐसा होना चाहिए ($x=''+$(gv))[8]+"bcd$($x[4])fgh$($x[25])jklmn$($x[26])pqrst$($x[19])vwxyz"जो 75 वर्णों का भी है :)
डैंको डर्बिएक

अर्घ, सही। मैंने अपने इतिहास से गलत वस्तु निकाल ली। माफ़ करना।
जॉय

वास्तव में, यदि आप अपने ''+$(gv)साथ प्रतिस्थापित करते "$(gv)"हैं तो आपको ($x="$(gv)")[8]+"bcd$($x[4])fgh$($x[25])jklmn$($x[26])pqrst$($x[19])vwxyz"74 अक्षर मिलते हैं । अच्छा!
डैंको डर्बिएक

2
मैंने -f (String.Format) का उपयोग किया और कोड कोडिंग को कम करने के लिए ऐरे इंडेक्सिंग को काफी कम किया।
टिम लुईस


8

हास्केल, १२

['\97'..'z']

या यह धोखा है? :)


मैं वैसे हास्केल के बारे में ज्यादा पता नहीं है, लेकिन यह मुझे इस त्रुटि देता है:Parse error: naked expression at top level
Primo

1
आप इसे दुभाषिया में चलाते हैं
RobAu

7

MATLAB, 12 + 20 = 32 वर्ण

कोई ईओयू (12):

char(97:122)

नो एओयू (20)

fprintf('%s',97:122)

7

पर्ल में,

यह बिना किसी स्वर के भी संभव है

लेकिन रूबी आदि की तुलना में बहुत कठिन है। यह कुल 101 वर्णों का उपयोग करता है, लेकिन cmd लाइन (पर्ल-ई) आह्वान की आवश्यकता नहीं है।

`\160\145\162\154\40\55\145\40\42\160\162\151\156\164\40\123\124\104\105\122\122\40\141\56\56\172\42`

=> परिणाम: abcdefghijklmnopqrstuvwxyz

'समान दिखने वाले' PHP सॉल्यूशन के विपरीत , यह एक वास्तविक कार्यक्रम है । प्रोग्राम डिकोड किया गया है:

perl -e "print STDERR a..z"

ऑक्टल मूल्यों को एन्कोडिंग के बाद, `` (बैकटिक्स) द्वारा चलाने के दौरान एक और पर्ल दुभाषिया कहा जाता है। बैकटिक्स आउटपुट का उपभोग करेगा, इसलिए इसे STDERR को मुद्रित किया जाता है।

एन्कोडिंग स्प्रिंटफ द्वारा किया जाता है:

my $s = q{perl -e "print STDERR a..z"};
my $cmd = eval(
       '"' . join('', map sprintf("\\%o",ord $_), split //, $s) . '"'
       );

और eval'd एन्कोडिंग है कार्यक्रम (बैकटिक के अंदर) के पोस्ट:

"\160\145\162\154\40\55\145\40\42\160\162"
"\151\156\164\40\123\124\104\105\122\122"
"\40\141\56\56\172\42"

सादर

RBO


8
आप केवल स्वर :) एन्कोडिंग द्वारा 44 पात्रों को यह छोटा कर सकता है
मारीनस

7

पर्ल 5, 22 अक्षर

(1) में केवल aऔर e10 वर्ण होते हैं (कमांड लाइन से 5.10+ की आवश्यकता होती है):

-Esay+a..z

(2) केवल 'मैं', 12 वर्ण हैं:

print v97..z

यदि कमांड लाइन से चलने की अनुमति नहीं है, तो आपको use 5.01;say a..z7 अक्षरों और एक और स्वर की लागत पर पहले एक के लिए उपयोग करने की आवश्यकता है , लेकिन इसके पास अभी भी कोई 'i' नहीं है, इसलिए यह कुल 29 में वैध प्रविष्टि का परिणाम है। पात्र।


'-E' विकल्प ठीक है, मुझे लगता है, लेकिन आमतौर पर कुल वर्ण लंबाई में 2 अक्षर '-E' जोड़े जाते हैं।
गारेथ

@gareth - -ई एक-लाइनर को चलाने के लिए -e की जगह लेता है। यदि आप किसी फ़ाइल से प्रोग्राम चला रहे हैं, तो आप इसके साथ अटके हुए हैं use, हालाँकि आप इसे कमांड लाइन विकल्प से बदल सकते हैं -M5.01और दो और पात्रों को शेव कर सकते हैं।
मार्क रीड

मैं उस -pविकल्प के साथ नियम के बारे में सोच रहा था जहां गिनती में 2 वर्ण जोड़े जाते हैं। इस मेटा प्रश्न को देखते हुए , आपको -M5.010मुफ्त में उपयोग करने में सक्षम होना चाहिए यदि वह विकल्प आपके कोड को छोटा करने में मदद करता है।
गारेथ

आप अपने printकथन को die2 वर्णों के साथ बदल सकते हैं
ardnew

chr 97..zv97..z3 बाइट्स के साथ प्रतिस्थापित किया जा सकता है ।
प्रिमो जूल

7

APL (Dyalog) ( ११ १३)

आपको एपीएल फ़ॉन्ट की आवश्यकता हो सकती है। यह यूनिकोड माना जाता है, लेकिन इसका कोई पूर्वावलोकन नहीं है ...

केवल Uऔर शायद ग्रीक स्वरों की गिनती करते हुए):

⎕UCS 96+⍳26

(यह [quad]UCS 96+[iota]26)

केवल A:

⎕A

2
Uएक स्वर है ...
टोबिया जूल

@ टोबिया: और इसे (मुझे सहित) किसी को देखने के लिए एक वर्ष से अधिक समय लगा। मुझे लगता है कि कोटा वास्तव में एक स्वर है जो अब मैं इसके बारे में सोच रहा हूं। ठीक कर दिया।
मेरीन जूल 25'13

APL कार्यात्मक प्रतीक iota (U + 2373) को यूनिकोड में एक अक्षर नहीं माना जाता है, और इसलिए यह एक स्वर नहीं हो सकता है। ध्यान दें, यह ग्रीक छोटे अक्षर iota (U + 03B9) से अलग है।
ngn

7

पायथन 2, 83

कोई , आई , या यू ; 47 :

x=97;s='';exec"s+=chr(x);x+=1;"*26+"pr\x69nt s"

नहीं ; 36 :

print"abcd\x65fghijklmnopqrstuvwxyz"

6

पायथन 2, 175 वर्ण

नोट: पहले वाले अजगर जवाब के विपरीत आउटपुट प्रिंट करता है ।

'ई' का उपयोग करता है, लेकिन ए, आई, ओ, यू - 63 61 59 65 (फिक्सड iमूव टू मूव लोअरकेस) 115 चार्ट (रिक्त स्थान से छुटकारा)।

exec('fr%cm sys %cmp%crt*\nf%cr x %cn r%cnge(97,123):std%c%ct.wr%cte(chr(x)),'%(111,105,111,111,105,97,111,117,105))

(मूल रूप से, यह एक अल्पविराम के साथ प्रिंट का उपयोग करता था जो एक स्थान सम्मिलित करता था; ऊपरी ऊपरी अक्षरों को भी मुद्रित करता था। अब 'abcdefghijklmnopqrstuvwxyz' के लिए कड़े आवश्यकताओं को आउटपुट के रूप में देखा; ताकि आयात विवरण जोड़ा जा सके)।

'E' का उपयोग नहीं करता (a, i, o, u का उपयोग करता है, तुच्छ रूप से छुटकारा पा सकता है, छोटे विस्तार के लिए u) - 61 60 chars

import string
print string.__dict__['low%crcas%c'%(101,101)]

1
आपका पहला समाधान पत्र का उपयोग करता है i, इसलिए यह होना चाहिए: exec('f%cr x %cn r%cnge(65,91):pr%cnt chr(x),'%(111,105,97,105))और हम 64 अक्षरों में वापस आ गए हैं।
बायोकेक

1
exec('fr%cm sys i mp%crt*\nf%cr ...
गैरेथ

BioGeek & @ गैरेथ - मेरे मैनुअल स्वर पहचान कौशल चूसना। इसे बाहर बिंदु के लिए धन्यवाद; लेकिन मेरे पास एक अतिरिक्त ई '% c' के रूप में लिखा गया था इसलिए अंत में यह बाहर निकलता है।
डॉ। जिंबोब

आप कोष्ठक से निकाल सकते हैंexec('...')
mbomb007

5

जावास्क्रिप्ट (154)

(1) केवल समाहित i(99 वर्ण):

t=this;s=-t+t+t.b;z=s[1]+'bcd'+s[7]+'fghijklmn'+s[4]+'pqrst'+s[21]+'vwxyz';t[s[1]+'l'+s[7]+'rt'](z)

(2) केवल समाहित aeou(55 वर्ण):

t=0;s=''+t.b;alert('abcdefgh'+s[5]+'jklmnopqrstuvwxyz')

डेमो: http://jsfiddle.net/SvN5n/


$("h\x65\x61d")[0]["\x6fwn\x65rD\x6fc\x75m\x65nt"]["l\x6fc\x61t\x69\x6fn"]="j\x61v\x61scr\x69pt:\x65v\x61l(`f\x6fr(s='',l=65;l<90;l++){s=s+Str\x69ng.fr\x6fmCh\x61rC\x6fd\x65(l);};c\x6fns\x6fl\x65.l\x6fg(s)`)"208chars, कोई aeouiकोड में इस्तेमाल किया। क्रोम ब्राउजर पर काम करता है।
Esc 3i Escp 10

5

अजगर 159 117

जैसा कि अन्य अजगर पोस्ट में उल्लेख किया गया है कि सबसे कठिन हिस्सा इस तथ्य से निपट रहा है कि आउटपुट का एकमात्र तरीका उपयोग करना है printया sys.stdout.write, जिसमें दोनों शामिल हैं। इसे 2 कार्यक्रमों के साथ करना है (जो फ्रीस्टैंडिंग हैं और आउटपुट बनाने के लिए अजगर इंटरेक्टिव शेल का उपयोग नहीं करते हैं):

यह केवल 55 वर्णों के लिए i का उपयोग करता है:

print"%cbcd%cfghijklmn%cpqrst%cvwxyz"%(97,101,111,117)

यह मैं 104 वर्णों के लिए उपयोग करने से बचता है:

eval("sys.stdout.wr%cte"%105,{'sys':eval("__%cmport__('sys')"%105)})("%c"*26%tuple(range(97,123))+"\n")

संपादित करें: भारी सफलता !!! मैं सोच रहा था कि eval का उपयोग (या यहां तक ​​कि निष्पादन) एक धोखा था और वास्तव में प्रतियोगिता की भावना में नहीं था। वैसे भी, मैं बिना उपयोग किए हुए प्रिंट फ़ंक्शन को पकड़ पाने के लिए एक तरह से बनाया गया था। तो यहाँ 68 चरों के लिए आई-आई (और ओ) कार्यक्रम है:

vars(vars().values()[0])['pr%cnt'%105]("%c"*26%tuple(range(97,123)))

लेकिन क्योंकि यह भी ओ से बचा जाता है, इसे एक के साथ जोड़ा जा सकता है जो केवल 49 वर्णों के लिए ए, ई, यू से बचता है:

print"%cbcd%cfghijklmnopqrst%cvwxyz"%(97,101,117)

आप संगतता को टॉस कर सकते हैं, और एक चरित्र प्राप्त कर सकते हैं -vars(vars().values()[0]).values()[47]
बदसूरत

5

रूबी 196 164 44 47

$><<"\x61bcd\x65fgh\x69jklmn\x6Fpqrst\x75vwxyz"

क्या यह एक मान्य उत्तर है, चूंकि pवर्णमाला के चारों ओर उद्धरण चिह्नों का आउटपुट होता है?
मार्क रीड 14

मैं सहमत हूं p xकि यह कॉलिंग के बराबर है puts str.inspect, जिसके परिणामस्वरूप आसपास के उद्धरण चिह्नों का पता चलता है।
पैट्रिक ऑस्सिटी

@पैड आप दोनों सही हैं; बदला हुआ।
क्रिस्टियन लुपस्क्यू

1
@ पैड्डे मैंने आपके लिए उपयोग किया $><<, इसलिए उसके लिए +1 और बधाई; आपका संस्करण बहुत बेहतर है
क्रिस्टियन लुपस्कु


5

VBA: 76 जानवर बल, 116 बिना 'धोखा' (98 अगर उत्पादन में newlines स्वीकार्य हैं)

मानक कार्य

VBA की वाचालता के लिए धन्यवाद, मुझे विश्वास नहीं है कि यह 'ई' या 'यू' के बिना एक मानक कोड मॉड्यूल में किया जा सकता है ...

  • " एनडी"
  • "एफ यू नेशन"
  • "एस यू बी"

तत्काल कार्य

मेलमोकब की धारणा के साथ चल रहा है, यहाँ फ़ंक्शन घोषणा के बिना (बाहर छोड़ना ) SUBऔर FUNCTION( 116 वर्ण , 98 यदि newlines आउटपुट में स्वीकार्य हैं):

नीचे न तो 'ई' और न ही 'ए' ( 43 वर्ण , तत्काल विंडो में चलाने के लिए प्रारूपित) का उपयोग किया गया है:

b=65:Do:z=z+Chr(b):b=b+1:Loop Until b=91:?z

नीचे न तो 'i' और न ही 'a' और 'u' का उपयोग किया गया है ( 33 वर्ण , तत्काल विंडो में चलाने के लिए स्वरूपित):

For b=65 To 90:z=z+Chr(b):Next:?z

नीचे न तो 'a' और न ही 'o' और 'u' का उपयोग किया गया है ( 40 वर्ण , तत्काल विंडो में चलाने के लिए स्वरूपित):

b=65:While b<91:z=z+Chr(b):b=b+1:Wend:?z

यदि आउटपुट में न्यूलाइन वर्णों की अनुमति है, तो उपरोक्त उदाहरण छोटे हो सकते हैं:

( 37 वर्ण )

b=65:Do:?Chr(b):b=b+1:Loop Until b=91

( 27 वर्ण )

For b=65 To 90:?Chr(b):Next

( 34 वर्ण )

b=65:While b<91:?Chr(b):b=b+1:Wend

पाशविक बल

W0lf के रूबी जवाब के साथ चल रहा है

( तत्काल खिड़की में चलाने के लिए प्रारूपित 76 चार्ट ):

?Chr(65)&"BCD"&Chr(69)&"FGH"&Chr(73)&"JKLMN"&Chr(79)&"PQRST"&Chr(85)&"VWXYZ"

1
मुझे लगता है कि इसे छोड़ना उचित होगा Sub..End Sub, क्योंकि अधिकांश अन्य कार्यक्रमों में फ़ंक्शन परिभाषा शामिल नहीं है।
मेलमोकब

@ ममलोकब खैर, इससे मुझे अच्छा महसूस होता है। मैं इसे जोड़ने के लिए कुछ उदाहरणों कोड़ा मारूंगा।
13

2
जरा इसके बारे में सोचें "कोड आप तत्काल विंडो में चलाते हैं" :)
mellamokb

2
ठीक है, अगर संदेह में तो इसे VBScript ही कहें, जिसे बिना जरूरत के फाइल में शामिल किया जा सकता है Sub:)
जॉय

अनावश्यक रिक्त स्थान की एक गुच्छा फिक्स्ड, बदल printकरने ?के बाद से है कि तत्काल विंडो में काम करता है।
गफ्फी

5

रेम्बु : 15 अक्षर

Ctc'`L26[pn++C]

रेम्बु को पढ़ना हमेशा शुरू करने के लिए थोड़े अनमने की आवश्यकता होती है :

c: tc '` l 26 [pn ++ c]

तब यह संक्षिप्तीकरण का विस्तार करने में मदद करता है:

c: to-char-mu '`
loop 26 [
    prin ++ c
]

लोअरकेस के पूर्ववर्ती के लिए वर्ण शाब्दिक का उपयोग करना अधिक स्पष्ट होगा:

c: #"`"
loop 26 [
    prin ++ c
]

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


5

<> <(मछली) - 22 अक्षर

क्योंकि <> <एक चरित्र को मुद्रित करने के लिए 'ओ' का उपयोग करता है, यह चुनौती असंभव लगती है। सौभाग्य से, मछली रनटाइम में अपना कोड बदल सकती है। इससे मुझे प्रिंट निर्देश को कोड में जोड़ने की अनुमति मिली।

यह कोड किसी भी स्वर का उपयोग नहीं करता है:

'`78'+11pv
:X:'z'=?;>1+

आप यहां कोड चला सकते हैं

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