Це репост еволюції “Hello World!” , Оригінально написана користувачем Хелько Хомба
Це не повинно бути закритим як дубльований через мета-консенсус тут .
Оригінал запитували понад два роки тому і останній раз діяли більше півроку тому. У мене є дозвіл від Helka Homba, щоб розмістити це тут
Оскільки оригінал було винайдено багато мов, і багато людей приєдналися до сайту, які ніколи не мали можливості відповісти за оригінал, тож я вважаю, що цей репост прийнятний.
Завдання полягає в тому, щоб зробити програму, яка друкує 2^n
до stdout, де n
номер вашої програми. Проблема полягає в тому, що у вашій програмі відповідь Левенштейна повинна бути 10 або меншою від програми у відповіді, поданій перед вашою.
Як це буде працювати
Нижче я надішлю першу відповідь за допомогою C #, який друкує 2 ^ (n = 1) = 2
.
Наступна особа, яка відповість, повинна змінити код з до 10 вставками, видаленням або заміною одного символу, щоб, коли він виконується мовою нової відповіді, він друкував 2^n
(з n
номером відповіді). Наприклад, 25-а відповідь (скажімо, це в Pyth) надрукувала б 2 ^ 25 або 33554432.
Це триватиме до тих пір, поки всі не застрягнуть, оскільки немає нової мови, програма останньої відповіді може бути запущена лише зміною 10 символів. Спільна мета полягає в тому, щоб побачити, як довго ми можемо продовжувати це, тому намагайтеся не робити жодних незрозумілих чи необґрунтованих редагувань символів (однак це не є вимогою).
Форматування
Будь ласка, відформатуйте свою публікацію так:
#Answer N - [language]
[code]
[notes, explanation, observations, whatever]
Де N - число відповідей (збільшується поступово, N = 1, 2, 3, ...).
Не потрібно говорити, які саме символи були змінені. Просто переконайтесь, що відстань Левенштейна від 0 до 10.
Якщо ви відповідаєте якоюсь мовою або отриманий код - це просто безлад, поясніть, будь ласка, що ви зробили і чому це працює, хоча це не потрібно.
Правила
Ключове, що потрібно зрозуміти щодо цього виклику, - це те, що одночасно може відповісти лише одна людина, і кожна відповідь залежить від тієї, що перед нею .
Ніколи не повинно бути двох відповідей з однаковою N. Якщо двоє людей одночасно відповідають за якийсь N, той, хто відповів пізніше (навіть якщо це кілька секунд різниці), повинен милосердно видалити свою відповідь.
Крім того ...
- Користувач може не надсилати дві відповіді поспіль. (наприклад, оскільки я подав відповідь 1, я не можу відповісти 2, але міг зробити 3).
- Намагайтеся уникати занадто багато відповідей за короткий проміжок часу.
- Кожна відповідь повинна бути іншою мовою програмування.
- Ви можете використовувати різні основні версії мови, як-от Python 2/3
- Мови вважаються відмінними, якщо їх традиційно називають двома різними іменами. (Тут можуть бути деякі неоднозначності, але не дозволяйте це зіпсувати змагання.)
- Вам не потрібно дотримуватися ASCII, ви можете використовувати будь-які символи, які ви хочете. Відстань Левенштейна буде вимірюватися символами унікоду .
- На виході має бути тільки
2^n
жодних інших символів. (Простір провідних / кінцевих пробілів добре, як і непригнічений вихід, як-от>>>
абоans=
) - Якщо у вашій мові немає stdout, використовуйте все, що зазвичай використовується для швидкого виведення тексту (наприклад,
console.log
абоalert
в JavaScript). - Коли потужність двох, які вам доведеться вивести, стає дуже великою, ви можете припускати нескінченну пам'ять, але не нескінченний цілий розмір. Будьте уважні до цілих переливів.
- Ви можете використовувати наукову нотацію або будь-який ваш природний спосіб представлення чисел. (За винятком одинарних, НЕ виводити в одинарних)
Будь ласка, переконайтесь, що ваша відповідь справедлива. Ми не хочемо усвідомлювати, що в ланцюжку розривається п'ять відповідей. Недійсні відповіді слід швидко виправити або видалити до появи додаткових відповідей.
Не редагуйте відповіді, якщо це абсолютно не потрібно.
Оцінка балів
Після того, як все налагодиться, перемагає користувач, який подає найбільш (дійсні) відповіді. Зв'язки переходять до користувача з найбільш сукупними голосами.
Змініть їх, коли публікуєте відповідь:
Таблиця лідерів
13 мов
Окс
8 мов
цепелін
4 мови
Павло
Джонатан Аллан
Крітіксі Літос
Рікер3 мови
бобокак
2 мови
позначки
Conor O'Brien
Destructible Watermelon
ovs
Tom Carpenter1 мова
Ataco
Блоки
Dennis
dzaima
Ерік Outgolfer
ETHproductions
ghosts_in_the_code
Лео
Лінн
Матеус Avellar
Натаніель
Qwerp-Derp
Р. Кар
Тейлор Скотт
Nimi
Mistah Фіггінс
PidgeyUsedGust
steenbergh
Досі використовувані мови:
- C # (Павло)
- /// (boboquack)
- Сітківка (Денніс)
- Желе (Джонатан Аллан)
- Піт (бобокак)
- > <> (Руйнуючий кавун)
- Minkolang (Kritixi Lithos)
- Perl (Павло)
- Пітон (Qwerp-Derp)
- постійний струм (Р. Кап)
- Вугілля (Jonathon Allan)
- Модифікуючий BrainFuck (Лев)
- SOGL (dzaima)
- ShapeScript (Джонатан Аллан)
- Пайк (бобокак)
- Рубі (Натаніел)
- 05AB1E (ovs)
- STATA (позначки)
- до н.е. (Kritixi Lithos)
- Захист (Okx)
- 2-разовий (Kritixi Lithos)
- Чеддар (Джонатан Аллан)
- Пілони (Okx)
- Баш (цеппелін)
- Пухнастий (Okx)
- CJam (Erik the Outgolfer)
- MATL (Okx)
- MATLAB (Том Карпентер)
- Октава (Kritixi Lithos)
- R (ов)
- JavaScript ES7 (Том Карпентер)
- Опуклий (Okx)
- Mathematica (ghosts_in_the_code)
- Піп (Okx)
- Складений (Conor O'Brien)
- GolfScript (Okx)
- Насправді (Лінн)
- RProgN (Okx)
- Схема (позначки)
- Елемент (Okx)
- J (блоки)
- Cubix (ETHproductions)
- zsh (цеппелін)
- VBA (Тейлор Скотт)
- Риба (цепелін)
- Ретикулярна (Okx)
- Перл 6 (Павло)
- RProgN2 (ATaco)
- PHP (Матеус Авелар)
- Джольф (Конор О'Браєн)
- Haskell (німі)
- Befunge-98 (Mistah Figgins)
- Gnuplot (цеппелін)
- QBIC (steenbergh)
- FOG (Рікер)
- Qwerty-RPN (Okx)
- Корн Шелл (кш) (цеппелін)
- Джулія (Рікер)
- Пітон 3 (Павло)
- Vimscript (Рікер)
- Тире (цепелін)
- Віті (Okx)
- csh (цеппелін)
- Ом (Okx)
- Бош (цепелін)
- es-shell (Рікер)
- Gol> <> (PidgeyUsedGust)
Це питання найкраще працює, коли ви сортуєте за найстарішими .