セミコロンのない最短のHello Worldプログラム


14

私は最近、SOでC#を使用してセミコロンを使用せずにHello Worldプログラムを作成できるかどうかを尋ねる質問を見ました。課題は、これを再度行うことですが、可能な限り最短のコードで行います!


3
これは言語固有の課題であることを前提としていますか?そうでなければ、このタスクが簡単になる言語がたくさんあります。(例えば、'Hello World'有効なGolfScriptプログラムがプリントということですHello Worldが。HQ9 +は簡単にそれを負かす事になります。)
イルマリKaronen

@llmari申し訳ありませんが、はい、質問を更新しました。私はそれをC#とタグ付けしたでしょうが、それは存在せず、それを作成する担当者がいません、ありがとう。
バリC

回答:


12

C#、76

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

私はVS2012でこれを試しましたが、is演算子を適用できるのは非常に驚きですが、うまく動作しますvoid...


15

C#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

C#(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)ため、すべてのシステムで 2桁のインデックス番号になるため、文字カウントは一般的に有効である必要があります。

デモ:http : //ideone.com/5npkyWriteメソッドはここでは明らかにインデックス23です)


このソリューションは素晴らしいです。+1
プリモ

私はまた、それを組み合わせた後、あなたのものより正確に1文字短くなったことは皮肉だと思った:)
mellamokb

7
に変更nullすることで3文字を保存できます0。111の素敵な文字数を取得します:)
ティムウィ

8

115バイト

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

少し短いものを作成することは可能ですが、何らかの非同期呼び出しを行う必要があることは間違いありません。


4

C# 96 95 94文字

ちょっとした詐欺ですが、IronRubyがインストールされている場合は動作します:

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

2
1 ==文字の比較演算子に置き換えると、1文字を節約できます。
ピーターテイラー

@PeterTaylorコードを更新しました。この素晴らしい提案をありがとう!
クリスチャンルパスク

またputs、文字列との間のスペースも削除しました。puts'Hello World'有効なルビーコードです
クリスチャンルパスク
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.