JavaScript, 30 bajtów, 10 cyfr, według produkcji ETH .
Oryginalny kod:
1: alert(Array(2).join(3).length)
Inne liczby
2: alert(Array(2).join(31).length)
3: alert(Array(2).join(314).length)
4: alert(Array(2).join(3141).length)
5: alert(Array(2).join(31415).length)
6: alert(Array(2).join(314159).length)
7: alert(Array(2).join(3141592).length)
8: alert(Array(2).join(31415926).length)
9: alert(Array(2).join(314159265).length)
10: alert(Array(2).join(3141592653).length)
Wyjaśnienie
Array(2)
tworzy tablicę z dwoma pustymi komórkami. .join
Sposób łączy wszystkie elementy w tablicy przy użyciu separatora, który zamienia go na String. W Kodzie Oryginalnym ogranicznikiem było 3
. Oznaczało to, że dwie puste komórki w macierzy są ze sobą połączone i używane 3
jako ich ogranicznik. To ocenia "3"
, bez niczego po obu stronach, 3
ponieważ tablica jest pusta. A ponieważ length
of "3"
jest 1
, ta wartość jest wysyłana do konsoli.
Dla pozostałych liczb dodam jeszcze 1 cyfrę do separatora, który łączy elementy tablicy. W ten sposób zwiększa się jego długość, a tym samym alert
wzrost wartości. Zauważ, że wartość liczbowa separatora nie jest ważna, tylko jej długość.
Snack Snippet!
Uwaga: Z oczywistych powodów użyłem go console.log
zamiast alert
w moim Snack Snippet. Ponadto dane wyjściowe z konsoli są wyświetlane we fragmencie.
console.log(Array(2).join(3).length)
console.log(Array(2).join(31).length)
console.log(Array(2).join(314).length)
console.log(Array(2).join(3141).length)
console.log(Array(2).join(31415).length)
console.log(Array(2).join(314159).length)
console.log(Array(2).join(3141592).length)
console.log(Array(2).join(31415926).length)
console.log(Array(2).join(314159265).length)
console.log(Array(2).join(3141592653).length)
Oktawa, 17 bajtów, 10 cyfr, autor: Stewie Griffin
źródło
Python 2, 17 bajtów, 10 liczb, według xnor
repl.it
źródło
Python 2, 9 bajtów, 10 liczb, xnor
źródło
print 10/10
jest dość interesujący, jeśli banujesz&
, według wyszukiwania drzewa. Lub, jeśli potrzebujesz przejść do 11.Perl, 14 bajtów, 10 cyfr, autor: Dada
Oryginalny kod:
Kod produkujący 1–10:
say"!"+1#"%""r
say"!"+2#"%""r
say"!"+3#"%""r
say"!"+4#"%""r
say"!"+5#"%""r
say"!"+6#"%""r
say"!"+7#"%""r
say"!"+8#"%""r
say"!"+9#"%""r
say"1"+9#"%""r
Mam wrażenie, że nie o to ci chodziło.
źródło
say"!"=~y"%""c
(więcsay"!!"=~y"%""c
itd., Za!
każdym razem jeszcze jeden ). Ale dobrze zagrane! :)=
lub~
byłby to ogromna wskazówka, a struktura tego,"
co pokazałem, była myląca (mam nadzieję) ... Ale powinienem był rozważyć, że skomentowanie połowy tego było wykonalne!=~
w zamierzonym rozwiązaniu. Jednak, byłem zajętys
,m
a/
i nie myślećy
.JavaScript, 22 bajty, 10 liczb, autor: Arnauld
Oryginalny program:
Pęknięty:
alert(0+6^42>101210^7)
alert(0+5^42>101210^7)
alert(0+4^42>101210^7)
alert(0+3^42>101210^7)
alert(0+2^42>101210^7)
alert(0+1^42>101210^7)
alert(0+0^42>101210^7)
alert(0+0^42>101210^8)
alert(0+0^42>101210^9)
alert(0+3^42>101210^9)
Najtrudniejsze jest radzenie sobie z tym
>
, który ma bardzo niski priorytet. Próbowałem zmienić go na>>
, ale najłatwiej jest po prostu go pochłonąć, czyniąc go bezużytecznym obliczaniem logicznego fałszu (42>101210
sekcja), który jest liczbowo 0, i po prostu generuje liczby od 1 do 10 za pomocą operatorów o jeszcze niższym priorytecie niż>
. Użyłem^
bitowej xor, ponieważ może dość łatwo generować liczby od 1 do 10 (wygodnie, 6 i 7 na oryginalnym wejściu pozwolą mi uprościć wyrażenie do6^7
1).źródło
JavaScript, 9 bajtów, Hedi
Oryginalny kod:
Modyfikacje:
źródło
Oktawa, 55 bajtów, 10 cyfr, wada
Ostateczna
1
mogą być przełączane do 9, a następnie zmienić+1
się+2
.źródło
Python 3, 16 bajtów, 10 liczb, wg Sp3000
To było fajne.
Wykorzystuje fakt (którego do tej pory nie znałem), że literał szesnastkowy kończy się, gdy tylko
0-9a-fA-F
napotka znak, który nie jest spotykany -0xfor
jest to więc bardzo podstępny sposób pisania15 or
. Następnie należało znaleźć odpowiednią wartość zgodną z 10 modulo 15.źródło
bin()
jeden miał być rozwiązany zbyt.JavaScript, 22 bajty, 10 liczb według Arnauld
Oryginalny kod :
Zmodyfikowano :
Zgaduję, że to nie jest zamierzone rozwiązanie, ale mam nadzieję, że nie jest zbyt daleko ...
źródło
alert(0140337-0xc0de)
(jeden bajt krótszy), ale przez pomyłkę użyłem notacji ósemkowej ES60o140337
i postanowiłem pozwolić na to w ten sposób.Oktawa, 32 bajty, 10 cyfr, autor: Luis Mendo
Oryginalny kod:
Zmodyfikowane kody:
Istnieje wiele sposobów wprowadzania modyfikacji (na przykład
s=2
i+0
na początku).Edycja: Bardziej prawdopodobna alternatywa:
źródło
05AB1E , 11 bajtów, 10 cyfr, wg Oliver
Oryginalny kod:
Inne liczby
Wyjaśnienie
Podsumowując, pchnij
3628801
, przenieś odwrotność i zaokrąglij to do najbliższej liczby całkowitej (ocenia na0
). Następnie zwiększ stos. TADA!Wypróbuj online! Dla wyjścia = 1 Następnie dodaj tyle
>
s, ile chcesz, w zależności od liczby, którą chcesz wyprowadzić.źródło
JavaScript, 12 bajtów, 10 liczb, Hedi
Oryginalny kod:
Od 2 do 10:
Tyle kodu można zrobić tylko tyle ...
źródło
+
.Galaretka, 7 bajtów, 10 liczb, Jonathan Allan
Oryginalny kod:
Następnie:
Możesz sprawdzić ostatni na TryItOnline!
Innym sposobem byłoby
źródło
Oktawa, 21 bajtów, 10 cyfr, autor: Stewie Griffin
To
fpr
było miłe wprowadzenie w błąd =) Ale uwielbiam(1') -> 2(1') -> 2+(1')
sekwencję!źródło
Sześciokąt, 7 bajtów, 10 cyfr, autor: Martin Ender
Oryginalny:
Kod produkujący 1–10:
1: Wypróbuj online!
9: Wypróbuj online!
10: Wypróbuj online!
Oto heks dla pierwszych 9 programów (gdzie # to liczba, którą chcesz wydrukować):
Krawędź pamięci jest ustawiona na wartość, którą chcesz wydrukować, odchyla się do SE i drukuje.
I heks dla 10:
Tutaj na końcu dodałem znak, który zwiększył rozmiar heksa. Najpierw krawędź pamięci jest ustawiona na 9, wskaźnik jest odchylany do SE, pamięć jest zwiększana, owija się, wskaźnik jest odchylany do SW, wartość jest drukowana i program się kończy.
Oto drugie rozwiązanie:
1: Wypróbuj online!
9: Wypróbuj online!
10: Wypróbuj online!
Szesnastka dla 1 - 9 (tym razem
*
jest to liczba do wydrukowania):Działa to tak samo jak 1 - 9 powyżej.
Heks dla 10:
Trafia
9
następnie#
przełącza wskaźnik instrukcji na prawy dolny, pamięć jest zwiększana do 10,$
przeskakuje nad!
, wskaźnik jest odwracany z powrotem na wschód, gdzie przeskakuje)
i kończy się.źródło
#
na 9) były możliwe, ale zawsze kończyły się glinami, które również miały nudne skróty. Szukałem od wieków, czy istnieje sposób, aby#
rozwiązanie działało z|
centrum, ale go nie znalazłem. W każdym razie fajna robota! :)C #, 90 bajtów, 10 liczb, Scepheo
Oryginalny:
Pierwszy:
Następnie:
źródło
Rubin, 81 bajtów, 10 liczb, histokrat
Oryginalny kod:
Pęknięty:
To było trudne. Wiele ujawnionych postaci okazało się czerwonymi śledziami!
/
nie jest dzieleniem, ale częścią wyrażenia regularnego.%
nie jest modem, ale częścią niecodziennej składni literału. Ten program po prostu drukuje długość ciągu ograniczonego znakami nowej linii. Kolejne programy można uzyskać, wstawiając dodatkowe znaki w drugim wierszu.źródło
p-~x
. Czy możesz wskazać wersję Ruby, w której jest ona poprawnie interpretowana? W dwóch, które mam lokalnie,p~-x
działa, alep-~x
jest interpretowane jakop()-~x
powodująceundefined method '-' for nil
błąd.0
niezmodyfikowane. Pozostała jeszcze jedna sztuczka do znalezienia.Oktawa, 25 bajtów, 10 cyfr, autor: Luis Mendo
źródło
아희 (Aheui), 19 bajtów, 10 liczb, według JHM
Oryginalny kod:
Zmodyfikowano:
źródło
Oktawa, 24 bajty, 9 liczb, według flawr
Oktawa, 24 bajty
910 liczbUwaga: to pęknięcie jest dla pierwszej wersji stanowisko policjanta (Wysłany niewłaściwy fragment), z objawionej kod wygląda tak:
___a__repmat(__one__),__)
. Prawidłowa wersja jest powyżej.Oryginalny kod:
Zmodyfikowane wersje, które drukują 2-10
źródło
JavaScript, 15 bajtów, 10 liczb, ETHProductions
Oryginalny kod:
Programy:
źródło
Oktawa, 21 bajtów, 9 liczb, według flawr
Naprawdę podobał mi się ten ... Sprytny :)
źródło
Acc !! , 10 bajtów, 9 liczb, według DLosc
Oryginalny kod:
Aby utworzyć liczby od 1 do 9:
49 to kod ascii z
1
._
domyślnie zawiera 0 (więc49+_ = 1
). IWrite
drukuje znak odpowiadający kodowi ascii jego argumentu. Całkiem prosto.źródło
Python 2, 49 bajtów, 10 liczb, AlexRacer
Może (tylko może) zamierzone rozwiązanie, ale jeśli tak, to można było oderwać wiele bajtów:
źródło
y=10*6;s='0910_____1';print int(s[8+(y>4or-6):y])
zmieniając że ostateczna1
Do2
, ...,9
a następnie*
do-
: repl.it/EW5q :(Befunge-93 , 11 bajtów, 10 cyfr, James Holderness
Wypróbuj online!
Prawdopodobnie nie jest to zamierzone rozwiązanie.
To, co zrobiłem, to pozbycie się nieznośnych 25 (
5:*
) poprzez pomnożenie przez0
. Jeśli następnie umieścimy9
na początku, wówczas wyjścia będą9 - N
tam, gdzie trzeba wygenerowaćN
z jednego polecenia. Jedynym problemem jest-1
uzyskanie10
, ale próba odczytania liczby całkowitej, jeśli nie ma danych wejściowych, wypycha a-1
.źródło
05AB1E, 5 bajtów, 10 cyfr według Adnana .
Oryginalny kod:
1-10:
Wyjaśnienie:
źródło
05AB1E, 6 bajtów, 10 cyfr, Adnan
Oryginalny kod:
Dodawaj
¼
kolejne, aby uzyskać wynik do 10:Wypróbuj online
Jak to działa:
źródło