सबसे कम हैलो वर्ल्ड प्रोग्राम जिसमें कोई अर्ध कॉलन नहीं है


14

मैंने हाल ही में SO पर कुछ प्रश्न देखे, जिसमें पूछा गया कि क्या आप C # का उपयोग करके किसी भी अर्ध कॉलन का उपयोग किए बिना हैलो वर्ल्ड प्रोग्राम बना सकते हैं। चुनौती फिर से ऐसा करने की है, लेकिन कोड की सबसे कम मात्रा में संभव है!


3
मेरा मानना ​​है कि यह एक भाषा-विशिष्ट चुनौती है? अन्यथा वहाँ बहुत सारी भाषाएँ हैं जहाँ यह कार्य तुच्छ होगा। (उदाहरण के लिए, 'Hello World'एक मान्य गोल्फस्क्रिप्ट प्रोग्राम है जो प्रिंट करता है Hello World। हालांकि HQ9 + इसे आसानी से हरा देगा।)
इल्मरी करोनन

@llmari क्षमा करें, हां, मैंने अपडेट किया हुआ प्रश्न है। मैंने इसे C # टैग किया होगा, लेकिन यह मौजूद नहीं है और मेरे पास इसे बनाने के लिए प्रतिनिधि नहीं है, धन्यवाद।
बाली C

जवाबों:


12

सी #, 76

class X{static void Main(){if(System.Console.Write("Hello, World!")is X){}}}

मैंने अपने VS2012 में यह कोशिश की और यह ठीक काम करता है, हालांकि यह काफी आश्चर्य की बात है कि आप isऑपरेटर को आवेदन कर सकते हैं void...


15

सी # 85 चार्ट

class H{static void Main(){if(System.Console.Out.WriteAsync("Hello, world!")is H){}}}

यह कौन सा .NET संस्करण है? .NET 4 में TextWriter.WriteAsync () के लिए परिभाषा नहीं है।
प्रिमो

3
@primo .NET 4.5 करता है।
बॉब

12

सी # (114)

class M{static void Main(){if(typeof(System.Console).GetMethods()[78].Invoke(null,new[]{"Hello, world!"})is M){}}}

ध्यान दें कि आपके सिस्टम पर Write(string)/ के लिए उचित इंडेक्स WriteLine(string)अलग हो सकता है। हालांकि, चूंकि कुल 106 विधियां हैं, इसलिए मैं लगभग निश्चित हूं Write(string)या तो WriteLine(string)हर सिस्टम पर दो अंकों का इंडेक्स नंबर होगा, इसलिए वर्ण गणना आम तौर पर मान्य होनी चाहिए।

डेमो: http://ideone.com/5npky ( Writeविधि स्पष्ट रूप से यहाँ 23 सूचकांक है)


यह समाधान शानदार है। +1
प्रिमो

मैंने यह भी सोचा कि यह विडंबना है कि इसे एक साथ रखने के बाद, यह आपकी तुलना में बिल्कुल 1 वर्ण से कम
निकला

7
को बदलकर तीन वर्णों को बचा सकता nullहै 0। 111 :)
टिमवी

8

115 बाइट्स

class H{static void Main(){if(((System.Action)(()=>System.Console.Write("Hello, world!"))).DynamicInvoke()is H){}}}

यह संभव है कि कुछ कम उत्पादन हो, लेकिन मुझे पूरा यकीन है कि आपको किसी प्रकार की अतुल्यकालिक कॉल करने की आवश्यकता होगी।


4

सी # 96 95 94 चार्ट

एक धोखा का एक सा है, लेकिन काम करता है अगर आप IronRuby स्थापित है:

class P{static void Main(){if(IronRuby.Ruby.CreateEngine().Execute("puts'Hello World'")>1){}}}

2
आप ==एक चरित्र तुलना ऑपरेटर के साथ बदलकर 1 चार्ट बचा सकते हैं ।
पीटर टेलर

@PeterTaylor मैंने कोड अपडेट कर दिया है। इस बेहतरीन सुझाव के लिए धन्यवाद!
क्रिस्टियन लुपस्क्यू

मैंने putsऔर स्ट्रिंग के बीच के स्थान को भी हटा दिया । puts'Hello World'माणिक कोड है
क्रिश्चियन लुपस्कु
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.