圣诞南瓜!


10

用您选择的语言编写一个程序,该程序以圣诞树的形状排列,并以相同的形状打印。

不允许的内容:

  • 打印出源文件
  • 只是因为语句是文字而被解释器回显的语句(例如,仅使用python中的树形列表塔)

不允许“打印出源文件”,但是允许读取源代码(不是从文件中)并打印吗?如果不是这样,那么使用Befunge几乎是不可能的。:/
贾斯汀

Answers:


16

的JavaScript

对于树木来说,“星星”可能太大了……

        (function _()
     {return('        (')
      +(''+''+''+''+'')
             +_+
            ')()'
           ;'We w'
          +'wis'+0+
         'h you a '
        +0+'merry Ch'
       +'ristmas, '+0+
      +'we '+0+'wish y'
     +0+'ou a merry Chr'
    +'istmas, we w'+0+'i'
   +0+'sh you '+0+'a merr'
  +'y Christmas and a h'+0+
 +'appy'+0+'new year! Ho ho'
+0+' ho! Merry '+0+'Christma'
            +'s!'
            })()

零是小玩意,在编辑器中看起来最好:

万岁语法高亮!

Chrome Developer工具中的输出


3
小玩意真不错!
Manishearth 2013年

2
我喜欢包含“我们祝您圣诞快乐!”
Iszi 2013年

11

红宝石

您从未说过我们无法使用网络访问...:D

        #
       s="
      open(
     'http:/
    /pastebin
   .com/raw.ph
  p?i=mGzbahp5'
 ).read";s=eval(
s.gsub! /\s/,'');
      puts(
      s+'')

逐字输出自身。

是的,我本可以使用URL缩短器,但这会使它变得不那么明显和有趣:P另外,我还需要一些东西来占用空间。否则树会很小。

像这样执行:

ruby -ropen-uri christmasquine.rb

5
在我看来,你被骗了,但是你对规则是正确的。被门把手所吸引。无论如何,这是您的
赞美,要让

1
@Manishearth是的,我们通融很多在这里!部分乐趣。:P(例如0个字符的奎恩等)
门把手

@Manishearth是的,Doorknob说了什么。如果您不希望弯曲某个规则,则需要包括一个禁止弯曲该规则的规则。因此,为什么最新的“反向奎因”和“镜像奎因”挑战具有针对回文和少于2个字符的奎因的规则。
Iszi 2013年

4

佩尔

#!/usr/bin/perl
$_=<<'the source';eval $_;

          #
         #*#
        print
       "#!/u".
      "sr/bin".
     "/perl \n".
    "\$_=<<'the".
   " source';eva".
  "l \$_;\n${_}th".
 "e source\n";# Mery 
#Christmas to all !!!
         ###
         ###
         #*#

the source

4

这是GolfScript中的一小部分

   {
  ".~  
 "2/~\
+@@2$*}.
   ~

请注意,上面的代码在从顶部起第二行的结尾处包含两个空格字符;这些空间对于正确操作至关重要。另外,应使用Unix样式(LF)换行符而不是Windows样式CR+ 来保存代码LF


这是一个稍大一点(对空格不敏感的),其中包括喜庆的信息:

     {
    " "
   MERRY
  5*n\+\n
 CHRISTMAS
".~"+2$*1>}
     .
     ~

一个适度有趣的功能是单词MERRYCHRISTMAS不是字符串文字,尽管它们无操作的,并且与它们周围的代码块一起复制到输出中。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.