태그 보관물: quine

quine

폴리 글로 퀴네를 앞뒤로! 언어로 소스 코드를 뒤로 출력하는

한 언어로 소스 코드를 출력하고 다른 언어로 소스 코드를 뒤로 출력하는 폴리 글 로트를 작성해야합니다 . 일반적인 규칙과 달리 현재 파일을 읽거나 내장을 사용하여 제출의 소스 코드를 가져와 한 언어로 되돌릴 수 있습니다. 소스 코드는 회문이 될 수 없습니다.

예를 들어 소스 코드가 abcxyz인 경우 abcxyz한 언어와 zyxcba다른 언어로 출력해야합니다 . 코드가 abcxyzyxbca이면 회문이기 때문에 유효하지 않습니다.

행운을 빕니다!



답변

PHP 및 GolfScript, 2 바이트

1

즉, 개행과 숫자 1

이에 반대 quine입니다 GolfScript , 이 사이트에 기여 하여 저스틴 . PHP는 프로그래밍 언어이므로 트리거하지 않으므로 입력을 인쇄합니다.


답변

파이썬 2 / 파이썬 3, 71 바이트

lambda _='lambda _=%r:(_%%_)[::int(1-(1/2)*4)]':(_%_)[::int(1-(1/2)*4)]

quine 내장을 사용하지 않습니다.

일반적으로 나를 깨우는 ovs에게 감사합니다.


답변

배치 / bash + tac, 39 바이트

:;tac -r -s '.\|'$'\n' $0;exit
@type %0

배치로 앞으로 출력합니다. 설명 : Batch는 첫 번째 행을 레이블로보고이를 무시하고 두 번째 행은 단순히 소스 파일을 STDOUT에 복사합니다. (확장자를 포함하여 파일을 호출하거나로 변경 %0해야 %~f0합니다.) bash네 가지 명령이 표시됩니다.

  • :아무것도하지 않습니다 (와 동일 true)
  • tac -r -s '.\|'$'\n' $0
    • -rtac정규식 모드로
    • -s 정규식을 지정합니다
    • '.\|'$'\n' 정규식으로 구성되어 있습니다.
      • . 개행을 제외한 모든 문자
      • \| 또는
      • $'\n' 개행
    • 결론은 tac파일을 줄이 아닌 문자로 나누는 것입니다.
  • exit 네 번째 명령을 무시하고 스크립트를 중지합니다.
  • @type %0 (무시)

답변

PHP 및 레티 나, 2 바이트

1

Gille의 PHP & GolfScript 답변과 동일합니다.

PHP는 코드를 읽고 직접 출력합니다. Retina는 입력에서 빈 문자열과 일치하는 항목을 대체하고 1로 바꾸고 줄 바꿈으로 출력합니다.


답변

JS (ES5), JS (ES6), 94 바이트

function f(){try{eval("x=(f+'f()').split``.reverse().join``")}catch(e){x=f+"f()"};return x}f()

quine 내장 기능을 사용하지 않습니다. JS 함수가 코드로 문자열 화된다는 사실 만 사용하십시오. 아마 더 골프를 칠 수 있습니다.


답변

소스 코드를 읽는 것을 허용한다면 실제로는 엉망이 아닙니다.

PHP 및 sh + util-linux, 6 바이트

rev $0

일반적인 골프 언어가 2 바이트로 할 수 있다고 확신합니다.


답변