Postanız için bir Markdown Şablonu oluşturun


19

Göreviniz basit: Hiçbir girdi almayan ve bunun gibi bir çıktı veren bir program (veya işlev) yazın:

## *name*, *length* bytes
    *code*

Kullandığınız *name*dilin adı nerede , *length*kodunuzdaki bayt sayısı ve *code*programınızın kaynak kodu. Birden *code*çok satır varsa , her satırdan önce dört boşluk vardır.

İşte Python 3'te 124 baytlık bir örnek uygulama:

s = "## Python 3, 124 bytes{2}    s = {1}{0}{1}{2}print(s.format(s,chr(34),chr(10)))"
print(s.format(s,chr(34),chr(10)))

Çıktı:

## Python 3, 124 bytes
    s = "## Python 3, 124 bytes{2}    s = {1}{0}{1}{2}print(s.format(s,chr(34),chr(10)))"
    print(s.format(s,chr(34),chr(10)))

Markdown'da:

Python 3, 124 bayt

s = "## Python 3, 124 bytes{2}    s = {1}{0}{1}{2}print(s.format(s,chr(34),chr(10)))"
print(s.format(s,chr(34),chr(10)))

Bu , bu yüzden en kısa cevap (bayt cinsinden) kazanır.


3
Eminim bu bir çift, ama eskisini bulamıyorum ...
Dada


1
Bunun bundan yeterince farklı olduğunu söyleyebilirim çünkü kendisi için bir tane üretiyor. Fikir benzer, ancak bunun için bir quine yazmanız gerekiyor.
Esolanging Fruit

Standart quine kurallarını kabul etmeli miyiz (örn. Kendi kodunuzu açıp okumamanız)?
Gabriel Benamy

@GabrielBenamy Evet.
Esolanging Fruit

Yanıtlar:


8

RProgN 2, 28 Bayt

«"  %s"F"#RProgN 2, 28 Bytes"

2
Olduğu gibi, bu ciddi bir rakip değildir ve silinmeye tabidir. Lütfen cevabınızı golf oynayın.
Dennis

1
@Dennis Golfed.
ATaco

2
Güzel! Bayt sayısından sonraki nokta gerekli görünmemektedir, ancak koddan önce dört boşluk (veya sekme) olmalıdır.
Dennis

5

Düşük yük, 48 bayt

(#Underload, 48 bytes
)(~:S(    ):S*aSaS(:^)S):^

Mesaj tam olarak kod tarafından üretilir. Ayraç yüke uygundur (son S'den sonra yükü yerleştirin), böylece onu yaygın olarak kullanılan bir tanımla gerçek bir ayraç haline getirir, ancak bir string eval kullanır (yani, string eval Underload'da bir döngü yapmanın tek yoludur) ; dil için oldukça temeldir).

Sohbetteki Underload sorgularında bir tartışmadan sonra, bunun da yaygın olarak kullanılan diğer tanımlarla bir quine olduğuna karar verdik; :^Programın sonunda ile kodlanan :^biraz daha önce, a ve programın böylece bir bölümü farklı bir kısmını kodlamaktadır.

2
İ n Underload quines'i tartışabilir misiniz? (Cool!:aSS)Cool!:aSS
CalculatorFeline

1
@CalculatorFeline Ne yazık ki, bu nedeniyle çalışmıyor (!).
Esolanging Fruit

2

Python 2, 58 bayt

_='## Python 2, 58 bytes\n    _=%r;print _%%_';print _%_

Bu yazının içeriği tam olarak kod tarafından basıldığı gibidir.
Outgolfer Erik

1

retiküler, 58 bayt

"'34'c: 4*91+c:s:e:t:y:b: 85: :,:r:a:l:u:c:i:t:e:r: :#dqO;

Çevrimiçi deneyin!

Açıklama: :ctek karakter dizesini iter c. Bu, "## retiküler, 58 bayt" dizesini, karakter karakter geriye doğru oluşturur, yığını tersine çevirir Ove ilk alıntı tarafından yakalanan dize de dahil olmak üzere her şeyi kullanır.


1

CJam, 33 bayt

{"## CJam, 33 bytes"N@S4*\"_~"}_~

Underload cevabı gibi çok çalışır.

Yığın izleme ( Ntemsil eder \n)

{"## CJam, 33 bytes"N@S4*\"_~"}
{"## CJam, 33 bytes"N@S4*\"_~"} {"## CJam, 33 bytes"N@S4*\"_~"}
{"## CJam, 33 bytes"N@S4*\"_~"} "## CJam, 33 bytes"
{"## CJam, 33 bytes"N@S4*\"_~"} "## CJam, 33 bytes" N
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"}
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"} " "
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"} " " 4
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"} "    "
"## CJam, 33 bytes" N "    " {"## CJam, 33 bytes"N@S4*\"_~"}
"## CJam, 33 bytes" N "    " {"## CJam, 33 bytes"N@S4*\"_~"} "_~"
<implicit output>

1

V, 25 bayt

ñi#V, 25 bytes<esc>o´ Ñ<esc>~"qpx

(Kodum için açıklamalar sağlamayı sevdiğim için, bu oluşturulan markdown sayılmaz: P)

Kaynak kod yazdırılamayan / ASCII olmayan karakterler içerdiğinden bir hexdump:

00000000: f169 2356 2c20 3235 2062 7974 6573 1b6f  .i#V, 25 bytes.o
00000010: b420 d11b 7e22 7170 78                   . ..~"qpx

Bu cevap, standart genişletilebilir V kininin önemsiz bir modifikasyonudur .

Açıklama:

ñ                                   " Run the following code one time, storing it in
                                    " register 'q'
 i                                  "   Enter insert mode
  #V, 25 bytes<esc>                 "   And insert the header
                   o                "   Open up a newline, and enter insert mode again
                    ´ Ñ             "   Enter four spaces, then a 'Ñ' character.
                                    "   (The reason we insert it uppercase, is because
                                    "   lowercase would end the loop now)
                       <esc>        "   Return to normal mode
                            ~       "   Toggle the case of the char under the cursor ('Ñ')
                             "qp    "   Paste the contents of register 'q' (this is the
                                    "   same as the entire program minus the initial 'ñ',
                                    "   followed by a 'ÿ' character because V is weird)
                                x   "   Delete the last character (the ÿ)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.