To jest powtórka z Evolution „Hello World!” , Pierwotnie napisanej przez użytkownika Helkę Homba
Nie należy go zamykać jako duplikatu, z powodu meta konsensusu tutaj .
Oryginał został zapytany ponad dwa lata temu i był ostatnio aktywny ponad sześć miesięcy temu. Mam zgodę Helki Homba na opublikowanie tego tutaj
Od czasu powstania oryginału wymyślono wiele języków, a wiele osób dołączyło do witryny, którzy nigdy nie mieli okazji odpowiedzieć na oryginał, więc uważam, że ten post jest akceptowalny.
Wyzwanie polega na stworzeniu programu, który drukuje 2^n
na standardowe wyjście, gdzie n
jest numer twojego programu. Problem polega na tym, że twój program musi mieć odległość Levenshteina 10 lub mniej od programu w odpowiedzi przesłanej przed tobą.
Jak to będzie działać
Poniżej prześlę pierwszą odpowiedź za pomocą C #, który drukuje 2 ^ (n = 1) = 2
.
Następna osoba, która chce odpowiedzieć, musi zmodyfikować kod, używając do 10 pojedynczych znaków, usunięć lub podstawień, aby po uruchomieniu w języku nowej odpowiedzi drukował 2^n
(podając n
numer odpowiedzi). Na przykład 25. odpowiedź (powiedzmy, że jest w Pyth) wypisuje 2 ^ 25 lub 33554432.
Będzie to trwało, dopóki wszyscy nie utkną, ponieważ nie ma nowego języka, w którym można uruchomić program z ostatnią odpowiedzią, zmieniając tylko 10 znaków. Wspólnym celem jest sprawdzenie, jak długo możemy to utrzymywać, więc staraj się nie dokonywać żadnych niejasnych lub nieuzasadnionych edycji postaci (nie jest to jednak wymagane).
Formatowanie
Sformatuj swój post w następujący sposób:
#Answer N - [language]
[code]
[notes, explanation, observations, whatever]
Gdzie N jest liczbą odpowiedzi (zwiększa się stopniowo, N = 1, 2, 3, ...).
Nie musisz mówić, które dokładnie znaki zostały zmienione. Upewnij się tylko, że odległość Levenshteina wynosi od 0 do 10.
Jeśli odpowiesz w jakimś języku lub otrzymany kod jest po prostu bałagan, nie proszę wyjaśnić co zrobiłeś i dlaczego to działa, choć nie jest to wymagane.
Zasady
Kluczową rzeczą do zrozumienia w tym wyzwaniu jest to, że tylko jedna osoba może odpowiedzieć na raz, a każda odpowiedź zależy od poprzedniej .
Nigdy nie powinny być dwie odpowiedzi z tym samym N. Jeśli dwie osoby jednocześnie odpowiedzą na niektóre N, ten, który odpowiedział później (nawet jeśli jest to różnica kilku sekund), powinien uprzejmie usunąć swoją odpowiedź.
Ponadto...
- Użytkownik nie może przesłać dwóch odpowiedzi z rzędu. (np. odkąd przesłałem odpowiedź 1, nie mogę odpowiedzieć 2, ale mógłbym zrobić 3)
- Staraj się unikać publikowania zbyt wielu odpowiedzi w krótkim czasie.
- Każda odpowiedź musi być w innym języku programowania.
- Możesz używać różnych głównych wersji języka, takich jak Python 2/3
- Języki liczą się jako odrębne, jeśli są tradycyjnie nazywane dwoma różnymi nazwami. (Mogą występować tu pewne niejasności, ale nie pozwól, aby zrujnowało to konkurs).
- Nie musisz trzymać się ASCII, możesz użyć dowolnych znaków. Odległość Levenshteina będzie mierzona w znakach Unicode .
- Wyjście powinno być tylko
2^n
i bez innych znaków. (Wiodące / końcowe białe znaki są w porządku, podobnie jak nieprzekraczalne dane wyjściowe, takie jak>>>
lubans=
) - Jeśli twój język nie ma standardowego użycia, użyj tego, co jest powszechnie używane do szybkiego generowania tekstu (np.
console.log
Lubalert
w JavaScript). - Kiedy moc dwóch, które musisz wyprowadzić, staje się bardzo duża, możesz założyć nieskończoną pamięć, ale nie nieskończoną liczbę całkowitą. Uważaj na przepełnienia liczb całkowitych.
- Możesz skorzystać z notacji naukowej lub dowolnego języka w najbardziej naturalny sposób reprezentowania liczb. (Z wyjątkiem unarnych, NIE wysyłaj w unarnych)
Upewnij się, że twoja odpowiedź jest poprawna. Nie chcemy zdawać sobie sprawy, że jest przerwa w łańcuchu pięciu odpowiedzi w górę. Nieprawidłowe odpowiedzi należy szybko naprawić lub usunąć, zanim pojawią się dodatkowe odpowiedzi.
Nie edytuj odpowiedzi, chyba że jest to absolutnie konieczne.
Punktacja
Gdy wszystko się uspokoi, wygrywa użytkownik, który prześle najwięcej (poprawnych) odpowiedzi. Remisy trafiają do użytkownika z największą liczbą głosów.
Edytuj je po opublikowaniu odpowiedzi:
Tabela liderów
13 języków
Okx
8 języków
zepelin
4 języki
Pavel
Jonathan Allan
Kritixi Lithos
Riker3 języki
Bobobak
2 języki
bmarks
Conor O'Brien
zniszczalne arbuz
OVS
Tom Carpenter1 język
ATaco
Blocks
Dennis
dzaima
Erik the Outgolfer
ETHproductions
ghosts_in_the_code
Leo
Lynn
Matheus Avellar
Nathaniel
Qwerp-Derp
R. Kap
Taylor Scott
nimi
Mistah Figgins
PidgeyUsedGust
steenbergh
Języki używane do tej pory:
- C # (Pavel)
- /// (boboquack)
- Retina (Dennis)
- Galaretka (Jonathon Allan)
- Pyth (boboquack)
- > <> (Zniszczalny Arbuz)
- Minkolang (Kritixi Lithos)
- Perl (Pavel)
- Python (Qwerp-Derp)
- dc (R. Kap)
- Węgiel (Jonathon Allan)
- Self Modifying BrainFuck (Leo)
- SOGL (dzaima)
- ShapeScript (Jonathon Allan)
- Pyke (Boboquack)
- Ruby (Nathaniel)
- 05AB1E (ovs)
- STATA (znaczniki)
- bc (Kritixi Lithos)
- Japt (Okx)
- 2sable (Kritixi Lithos)
- Cheddar (Jonathon Allan)
- Pylony (Okx)
- Bash (zeppelin)
- Pushy (Okx)
- CJam (Erik the Outgolfer)
- MATL (Okx)
- MATLAB (Tom Carpenter)
- Oktawa (Kritixi Lithos)
- R (ovs)
- JavaScript ES7 (Tom Carpenter)
- Wypukły (Okx)
- Matematyka (ghosts_in_the_code)
- Pip (Okx)
- Ułożone (Conor O'Brien)
- GolfScript (Okx)
- Właściwie (Lynn)
- RProgN (Okx)
- Schemat (oznaczenia)
- Element (Okx)
- J (bloki)
- Cubix (produkty ETH)
- zsh (zeppelin)
- VBA (Taylor Scott)
- Ryba (Zeppelin)
- Siatka (Okx)
- Perl 6 (Pavel)
- RProgN2 (ATaco)
- PHP (Matheus Avellar)
- Jolf (Conor O'Brien)
- Haskell (nimi)
- Befunge-98 (Mistah Figgins)
- Gnuplot (zeppelin)
- QBIC (steenbergh)
- FOG (Riker)
- Qwerty-RPN (Okx)
- Korn Shell (ksh) (zeppelin)
- Julia (Riker)
- Python 3 (Pavel)
- Vimscript (Riker)
- Dash (zeppelin)
- Vitsy (Okx)
- csh (zeppelin)
- Ohm (Okx)
- Bosh (Zeppelin)
- es-shell (Riker)
- Gol> <> (PidgeyUsedGust)
To pytanie działa najlepiej, gdy sortujesz według najstarszych .