Нещодавно я побачив кілька запитань на SO, які запитували, чи можна зробити програму Hello World без використання напівколонок за допомогою C #. Завдання полягає в тому, щоб зробити це знову, але в найкоротшій кількості можливого коду!
Нещодавно я побачив кілька запитань на SO, які запитували, чи можна зробити програму Hello World без використання напівколонок за допомогою C #. Завдання полягає в тому, щоб зробити це знову, але в найкоротшій кількості можливого коду!
Відповіді:
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 тут)
nullна 0. Отримайте приємну кількість персонажів 111 :)
Трохи обман, але працює, якщо у вас встановлений IronRuby:
class P{static void Main(){if(IronRuby.Ruby.CreateEngine().Execute("puts'Hello World'")>1){}}}
==оператора порівняння з одним символом.
putsі рядком. puts'Hello World'дійсний код рубіну
'Hello World'це дійсна програма GolfScript, яка друкуєHello World. Хоча HQ9 + легко переможе її.)