Napisz program lub funkcję, która przyjmuje liczbę całkowitą większą niż 1 lub mniejszą niż -1. Oznacza to, że dane wejściowe nie będą wynosić 0, 1 lub -1.
Jeśli dane wejściowe to 2
, dane wyjściowe powinny być:
|\_/|
|___|
Jeśli dane wejściowe to 3
, dane wyjściowe powinny być:
|\_/\_/|
|______|
Jeśli dane wejściowe to 4
, dane wyjściowe powinny być:
|\_/\_/\_/|
|_________|
Wzorzec jest kontynuowany w ten sam dokładny sposób dla większych nakładów. Na przykład, jeśli dane wejściowe to 10
, dane wyjściowe powinny być:
|\_/\_/\_/\_/\_/\_/\_/\_/\_/|
|___________________________|
Jeśli dane wejściowe to -2
, dane wyjściowe powinny być:
____
| |
|_/\_|
Jeśli dane wejściowe to -3
, dane wyjściowe powinny być:
_______
| |
|_/\_/\_|
Jeśli dane wejściowe to -4
, dane wyjściowe powinny być:
__________
| |
|_/\_/\_/\_|
Wzorzec jest kontynuowany w ten sam dokładny sposób dla mniejszych danych wejściowych. Na przykład, jeśli dane wejściowe to -10
, dane wyjściowe powinny być:
____________________________
| |
|_/\_/\_/\_/\_/\_/\_/\_/\_/\_|
Dane wyjściowe można wydrukować lub zwrócić jako ciąg z opcjonalnym końcowym znakiem nowej linii. Prawy górny „pusty” róg wyjścia dla negatywnych danych wejściowych może być spacją lub może pozostać pusty.
Najkrótszy kod w bajtach wygrywa.
Odpowiedzi:
Pyth, 45 bajtów
Wypróbuj online: pakiet demonstracyjny lub testowy
Wyjaśnienie:
źródło
CJam,
565049 bajtówWypróbuj online w interpretatorze CJam.
Jak to działa
źródło
Pyth,
5654 bajtówGram w Pyth przez telefon z tłumaczem online. To całkowicie świetny pomysł.
Aktualizacja 15.10.2015: Przepisałem tę rzecz (wciąż na moim telefonie, LOL) i zapisałem 2 bajty, z których jeden można było zrobić również z oryginałem.
Wypróbuj online.
źródło
Minkolang 0,8 , 100 bajtów
Po prostu buduje stos, a następnie drukuje wszystko na raz. Jestem pewien, że można grać w golfa, ale spędziłem już dużo czasu na tym ...
źródło
JavaScript (ES6),
11198 bajtówOdkryto optymalną technikę! Okazuje się, że usunięcie wszystkich interpolatorów z ciągów szablonów pozwala zaoszczędzić wiele bajtów. Być może może być jeszcze krótszy, a może nie. W każdym razie ciągi szablonów ES6 (i funkcje strzałek) są niesamowite. :)
źródło
Python 2.7, 144 bajty
Zajęło to więcej bajtów niż oczekiwano. Oto kod.
źródło
Java, 272 bajtów
źródło
SpecBAS - 167 bajtów
IIF$
jestIF
instrukcją wbudowaną ,#13
jest sposobem na osadzenie nowego wiersza w ciągu (i nie zawsze wymaga znaku „+”, jeśli znajduje się między ciągami zakodowanymi na stałe).Od kilku wydań temu SpecBAS pozwala na przypisanie wielu
LET
instrukcji do jednej instrukcji, co pomaga zachować niektóre znaki.źródło
Python 2.7, 118 bajtów
Zejście ze 120 do 118 było fajne!
źródło
Rubin - 113 bajtów
Wydaje się za długi. Spróbuję trochę pograć w golfa.
źródło
C #, 185 bajtów
C # zmaga się z powtarzaniem ciągów golfowych.
Całkowicie grał w golfa:
W celu dodania przejrzystości dodano wcięcia i nowe linie:
źródło
PowerShell -
200190186168154 154Grał w równanie (4 - (($ n-2) 3)) do (3 $ n-6) wraz z kilkoma obcymi parenami i średnikami.
Stwierdzono, że `n jest równoważne
[Environment]::NewLine
i że$s -f [args]
jest to równoważne z[String]::Format
:Wyjaśnienie zachowuje wyjaśniające nawiasy:
źródło