ビートルズの歌と六角形


30

2つの三角形(つまり、ピラミッド)形のプログラムを作成します。

最初のものは、3文字の最小ベース幅を持つ上向きのテキスト三角形でなければなりません。そのため、次のような構造になります

 X
XXX

または

  X
 XXX
XXXXX

または

   X
  XXX
 XXXXX
XXXXXXX

以上。のそれぞれは、X実際のコードの文字に置き換えられます。実際のコードは、行末記号以外のものである可能性があります(したがって、Xがスペースになる可能性があります)。すべてのをX置き換える必要があり、三角形の形状を形成するのに役立つスペースと改行はそのままである必要があります。

2番目のプログラムは、三角形が下を向いていることを除いて、最初のプログラムと同じサイズと形状でなければなりません。

最初のプログラムが次のように見える場合

  X
 XXX
XXXXX

あなたの2番目のプログラムは次のようになります

yyyyy
 yyy
  y

それぞれyが実際のコードを入力する必要がある文字です(コードとは異なる可能性がありますX)。ここでもスペースと改行は同じでなければなりません。

あなたの仕事は、これらのプログラムが、入力を一切受け取らずに、個別のビートルズの曲のタイトルを(標準出力または最も近い代替に)出力するように書くことです。このウィキペディアの記事は、ビートルズの公式曲リストとして機能します。出力は、リストされているとおりのタイトルの1つである必要がありますI Want You (She's So Heavy)

ただし、奇妙な三角形プログラムの要件がある場合でも、これは非常に簡単です。そこで、最初の2つから別のプログラムを作成し、さらに別の曲のタイトルを出力する必要があります。

2つの三角形プログラムのそれぞれの3つのコピーを組み合わせることにより、六角形の3番目のプログラムを作成できます。

最初のプログラムのベース幅が3だった場合、次のようになります。

 XyyyX
XXXyXXX
yyyXyyy
 yXXXy

ベース幅が5の場合、次のようになります。

  XyyyyyX
 XXXyyyXXX
XXXXXyXXXXX
yyyyyXyyyyy
 yyyXXXyyy
  yXXXXXy

このプログラム(他のスペースやスペースを使用して実行する場合)は、最初の2つのプログラムと同様に、ビートルズの別の曲のタイトルを出力する必要があります。また:

  • 3つのプログラムは、異なる曲のタイトルを出力する必要があります。
  • 長さが8文字以上の曲のタイトルのみが許可されます。
  • あなただけのいずれかを選択することができRevolutionRevolution 1そしてRevolution 9タイトルがとても似ているので。
  • 3つのお気に入りのビートルズの曲を選択する必要があります。(まあ、試してみてください。)

実際のプログラムが必要であることに注意してください。機能は許可されていません。プログラムで独自のソースコードを読み取ることも許可されていません。

最初のプログラムが

  A
 AAA
AAAAA

出力できましたAcross the Universe

次に、2番目のプログラム

bbbbb
 bbb
  b

出力できますRevolution

次に、六角形プログラムに結合します

  AbbbbbA
 AAAbbbAAA
AAAAAbAAAAA
bbbbbAbbbbb
 bbbAAAbbb
  bAAAAAb

出力はになる可能性がありますGet Back

得点

三角形のベース幅が最小の提出が優先されます。結び付きの可能性が高い場合、3つの曲のタイトルの合計の長さが最大の提出物が勝ちます。


2
きっとタイブレーカーは3曲のベストチョイスでしょうか?;)
ダグマックリーン

1
私はちょうどSP3000のメソッドをコピーせずにPythonのエントリを書いて困難を抱えている(と思ったことはありません、私は思います!構文空白文句こと)が、私は、六角形の中に二つの三角形を組み立てるために、スクリプトを書きました。他の人にとって便利な場合ここに要点があります。
ティムペデリック

@ mbomb007三角形のパターンの一部ではない後続のスペースは問題ありません。
カルビンの趣味

@TimPederickあなたのhexagon-ifierを動作させることができなかったので、2つの複数行の文字列で開始するPythonスクリプトを書きました。誰でも使用したい場合はこちらをご覧ください
mbomb007

@ mbomb007申し訳ありませんが、タイトルの一部ではないため、末尾のスペースは許可されません。(多くの印刷ステートメントが1つを追加するので、末尾の改行を許可します。)通常のバックスペースポリシーについてはわかりませんが、大丈夫です。
カルバンの趣味

回答:


18

GolfScript、幅= 9文字、タイトル= 33文字

六角形

    "Let It Be"
   }";"Yeste"}";      
  "Twi""rda""Twi"
 "st an""y""st an"
"d Shout"}"d Shout"
Let It Be"Let It Be
 "Yeste"}";"Yeste"
  "rda""Twi""rda"
   "y""st an""y"
    }"d Shout"}

プリントは、それがしてみましょう。(9文字)

オンラインでお試しください。

使い方

"Let It Be"最初の行のトークンは、文字列Let It Beをスタックプッシュします。

2行目}は、文書化されていない「スーパーコメント」で始まり、すぐに実行を中止します。

終了する前に、GolfScriptはスタックの内容を出力します。

X三角形

    "
   }";
  "Twi"
 "st an"
"d Shout"

TwistとShoutを印刷します。(15文字)

オンラインでお試しください。

使い方

最初の2行"\n }"は、コマンドが;スタックから破棄する文字列をプッシュします。

残りの行には、トークン"Twi""st an"およびが含まれています。これらのトークンは"d Shout"、ストリングTwistおよびShoutを3つに分けてプッシュします。

終了する前に、GolfScriptはスタックの内容を出力します。

Y三角形

Let It Be
 "Yeste"
  "rda"
   "y"
    }

昨日印刷します。(9文字)

オンラインでお試しください。

使い方

トークンLetItおよびBe1行目は未定義なので、何もしません。

次の3行にはトークン"Yeste""rda"およびが含まれており"y"、これらは3つの部分で文字列Yesterdayをプッシュします。

}最後の行には何もしません。とにかくプログラムは終了したでしょう。

もう一度、GolfScriptは終了する前にスタックの内容を出力します。


21

Befunge -93、幅= 13 15、タイトル= 31 24文字

昨夜停電になったため、思いついたときにこれを更新できませんでしたが、三角形の幅を減らして曲の長さ長くすることができました!

上向きプログラム:「ポニーを掘る」、10文字:

      v
     v> 
    v#  >
   "<     
  v <>"y"v>
 <v"Dig a P"
"^>:#,_@.>"no

説明

私は本当にBefungeのラップアラウンドトリックを活用し、6番目の位置にスペースがあるため、「Dig a Pony」を選びました。これは、プログラムの流れが移動することができますを通じてソング名。オンラインインタープリターで試して、どのように機能するかを確認してください。

下向きプログラム:「私が倒れたら」、9文字:

< v"f I Fell"
 v>"I">:#,_@
  "raC yM "
   v"Drive


       .

(期間は無関係であり、他の行を表示するためにのみ含まれています。)

説明

ここで関連する行は、最初の2行のみです。ラップアラウンドトリック(命令ポインターがすぐに左に送信される)を使用して、もう1つの文字を詰め込みました。2行目は曲名を出力します。

組み合わせ:「Drive My Car」、12文字:

      v< v"f I Fell"v
     v> v>"I">:#,_@v> 
    v#  >"raC yM "v#  >
   "<     v"Drive"<     
  v <>"y"v>     v <>"y"v>
 <v"Dig a P"   <v"Dig a P"
"^>:#,_@.>"no "^>:#,_@.>"no
< v"f I Fell"v< v"f I Fell"
 v>"I">:#,_@v> v>"I">:#,_@
  "raC yM "v#  >"raC yM "
   v"Drive"<     v"Drive
         v <>"y"v>     
        <v"Dig a P"   
       "^>:#,_@.>"no 

同じことですが、六角形と三角形を示すために線が追加されています。

       -----------------
      /v\< v"f I Fell"/v\
     /v> \v>"I">:#,_@/v> \
    /v#  >\"raC yM "/v#  >\
   /"<     \v"Drive/"<     \
  /v <>"y"v>\     /v <>"y"v>\
 /<v"Dig a P"\   /<v"Dig a P"\
/"^>:#,_@.>"no\ /"^>:#,_@.>"no\
-------------------------------
\< v"f I Fell"/v\< v"f I Fell"/
 \v>"I">:#,_@/v> \v>"I">:#,_@/
  \"raC yM "/v#  >\"raC yM "/
   \v"Drive/"<     \v"Drive/
    \     /v <>"y"v>\     /
     \   /<v"Dig a P"\   /
      \ /"^>:#,_@.>"no\ /
       -----------------

説明

これは、下向きの三角形の3行目と4行目が作用する場所です。両方の三角形の端にいくつかのリダイレクトがあり、これらの2つの行を介して命令ポインターを移動し、「Drive My Car」をスタックにプッシュします。次に、>:#,_@上向きの三角形のビットを使用して印刷されます。ちなみに、左右の両方の上向き三角形が使用されます。

空きスペースをもっと活用する方法があるかもしれませんが、私の時間は他の質問に費やす方が良いと思います。:P


うーん PPCGのルールは、プログラムが少なくとも1つのインタープリターで機能する場合、それは有効です。ただし、良い場所です。
エレンディアスターマン

PPCGのもう1つの「規則」は、インタープリターが仕様ではなく言語を定義することです。したがって、私のBefungeコードは本質的に有効です。
エレンディアスターマン

18

Python 2、幅= 51

                         #print "Yellow Submarine" if id else "(Reprise)"   ##
                        #.##...............................................##.#
                       #...##.............................................##...#
                      #.....##...........................................##.....#
                     #.......##.........................................##.......#
                    #.........##.......................................##.........#
                   #...........##.....................................##...........#
                  #.............##...................................##.............#
                 #...............##.................................##...............#
                #.................##...............................##.................#
               #...................##.............................##...................#
              #.....................##...........................##.....................#
             #.......................##.........................##.......................#
            #.........................##.......................##.........................#
           #...........................##.....................##...........................#
          #.............................##...................##.............................#
         #...............................##.................##...............................#
        #.................................##...............##.................................#
       #...................................##.............##...................................#
      #.....................................##...........##.....................................#
     #.......................................##.........##.......................................#
    #.........................................##.......##.........................................#
   #...........................................##.....##...........................................#
  #.............................................##...##.............................................#
 #...............................................##.##...............................................#
print "Sgt. Pepper's Lonely Hearts Club Band",;id=0#print "Sgt. Pepper's Lonely Hearts Club Band",;id=0
print "Yellow Submarine" if id else "(Reprise)"   ##print "Yellow Submarine" if id else "(Reprise)"   #
 #...............................................##.##...............................................#
  #.............................................##...##.............................................#
   #...........................................##.....##...........................................#
    #.........................................##.......##.........................................#
     #.......................................##.........##.......................................#
      #.....................................##...........##.....................................#
       #...................................##.............##...................................#
        #.................................##...............##.................................#
         #...............................##.................##...............................#
          #.............................##...................##.............................#
           #...........................##.....................##...........................#
            #.........................##.......................##.........................#
             #.......................##.........................##.......................#
              #.....................##...........................##.....................#
               #...................##.............................##...................#
                #.................##...............................##.................#
                 #...............##.................................##...............#
                  #.............##...................................##.............#
                   #...........##.....................................##...........#
                    #.........##.......................................##.........#
                     #.......##.........................................##.......#
                      #.....##...........................................##.....#
                       #...##.............................................##...#
                        #.##...............................................##.#
                         #print "Sgt. Pepper's Lonely Hearts Club Band",;id=0#

うん、まあ... Python。

Pythonコメントはで始まる#ため、行の大部分は単なるコメントです。上向きの三角形の場合、実行されるのは

print "Sgt. Pepper's Lonely Hearts Club Band",;id=0

を印刷しSgt. Pepper's Lonely Hearts Club Bandます。

下向きの三角形については、実行します

print "Yellow Submarine" if id else "(Reprise)"

Yellow Submarine関数idは真実であるため、を出力します。

ただし、プログラムを組み合わせると、上記の2行が順番に発生します。最初の行の最後はに設定されていますがid=0、これは偽りであるため、最終結果はa (Reprise)を最後まで追加し、Sgt. Pepper's Lonely Hearts Club Band (Reprise)出力として取得することです(Calvin はこれで問題ないと言いました)。


15
これは...私はより多くの任意のビートルズの曲よりインペリアルマーチの考えさせる
カルバンの趣味

6
この形を見るだけでTIEファイターの効果音を聞くことができます
15

@ Calvin'sHobbiesハハハ。確かに!
ルイスメンドー

17

雪だるま1.0.2、幅= 13

      }?}///////////}
     ///"Get Back"////
    ///////////////////
   /////////////////////
  "Sun King//"[["Sun King
 "*"BirthdaysP/"*"Birthday
"]]8AaLsP[[///"]]8AaLsP[[//
?}///////////}?}///////////
 "Get Back"////"Get Back"/
  ///////////////////////
   /////////////////////
    //"[["Sun King//"[[
     sP/"*"BirthdaysP/
      /"]]8AaLsP[[///

最後に!雪だるまが成功できる挑戦!:D:D

スラッシュは主に審美的な目的のためのものであり、それらの大部分はスペースに置き換えることができます(しかし、それはもっとずっと退屈に見えるでしょう)。コメントのために、いくつかのスラッシュが必要です。

プログラムA(出力: Birthday

      }
     ///
    /////
   ///////
  "Sun King
 "*"Birthday
"]]8AaLsP[[//

これは非常に簡単です。最初の文字(})がアクティブな変数を設定し、それからたくさんのコメント/ノーオペレーションがあります。次に、文字列"Sun King\n "を保存し、すぐに破棄します(経由して*使用して、決して使用しないパーマバーに保存します)。次に保存し"Birthday\n"ます。

]][[ foo ]]Snowmanではブロックコメントであるため、ここでは何もしませんが、[[この前に]](プログラムA自体内で)一致するものがないため、何もしません。次に8AaL、文字列の最初の8文字を取得してsP出力し、[[プログラムの残りの部分をコメントアウトします(これも一致しないため]]です)。

プログラムB(出力:)Get Back

?}///////////
 "Get Back"/
  /////////
   ///////
    //"[[
     sP/
      /

これも非常に簡単です。?}と同等です}?単にすべての変数を非アクティブに設定します。これはここではノーオペレーションですが、後で重要になります)。次に、文字列を保存します"Get Back"何もしない操作を行い(//行末までは常にコメントです)、を介して出力しsPます。

フルプログラム

出力は、あなたが推測したとおりですSun King1です。

この行を1行ずつ見てみましょう。

  • ライン1

          }?}///////////}
    

    これにより、以前のプログラムと同様にアクティブな変数が設定されます(変数を?単にオンにしてからオフに戻さないようにするために必要であることがわかります}})。行の残りはコメント化されています。

  • 2〜4行目

         ///"Get Back"////
        ///////////////////
       /////////////////////
    

    コメント...

  • 5行目

      "Sun King//"[["Sun King
    

    ここで、文字列を保存して"Sun King//"から、ブロックコメントを開始します。これは本質的に次までまですべてをスキップします]]

  • 6行目

     "*"BirthdaysP/"*"Birthday
    

    まだブロックコメントの中に...

  • 7行目

    "]]8AaLsP[[///"]]8AaLsP[[//
    

    ここで、コードを実行するために、ブロックコメントを短時間脱出します 8AaLsP。これは実際にはプログラムAから再利用されます。8文字の長さの曲をすべて選択したので、結合したプログラムに同じコードを使用できます。

    その後、少し注意が必要です。次回ブロックコメントから出てきたとき、8AaLsP再び見ます。ただし、今回は、すべての変数が未定義です(変数を削除spする消費モードで、印刷と呼ばれます)。以来aal(二つの引数を必要とし、この時間は、それは一つだけを持っています8)、それエラーと変わらない変数を残します。

    同様に、にsp遭遇すると8、印刷するのが間違ったタイプであることが認識され、変数はそのままになります。

  • 8〜13行目

    ?}///////////}?}///////////
     "Get Back"////"Get Back"/
      ///////////////////////
       /////////////////////
        //"[["Sun King//"[[
         sP/"*"BirthdaysP/
    

    まだそのブロックコメントに残っています...

  • 14行目

          /"]]8AaLsP[[///
    

    最後に、同じprint-first-8-charsシーケンスをもう一度呼び出してみると、もう一度失敗し、さらに2つのエラーが発生します。(これ8は、変数がnow 8 8であることを意味します。これは現時点では正しい変数ですが、正しいaal型ではありません。)


1:SnowmanExceptionSTDERRへの4つのランタイムエラー(s)と同様ですが、メタごとに問題はありません


The slashes are mostly for aesthetic purposes, and the majority of them can be replaced with spaces (but that would make it look a whole lot more boring)しかし、何が起こっているのかを把握するのが少し難しくなります
...-curiousdannii

14

> <>、幅= 11

     /"yadhtri"\ /
           v"B"/   
        ?!;>ol      
  duJ yeH" /"eduJ yeH
 o   >l?!;   o   >l?!;
staC"/"klaw staC"/"klaw
"yadhtri"\ /"yadhtri"\ 
     v"B"/       v"B"/
  ?!;>ol      ?!;>ol 
   " /"eduJ yeH" /"e
       o   >l?!;   
      staC"/"klaw 

2D言語は、この課題に非常に満足しています。

上向き矢印

     /


  duJ yeH
 o   >l?!;
staC"/"klaw

プログラムの流れは左上から始まり、右に移動します。/アップ反映し、そして> <>はトロイダル以来、私たちは下から再び現れます。次に、別の/キーを押して再度反映し、klawstaC文字列""モードで文字を1つずつスタックにプッシュします。最後に、上向きに反射して、>l?!;oループます。これは、スタック全体を> <>で印刷する慣用的な方法です。

これは印刷します Catswalkます。

下向き矢印

"yadhtri"\ 
     v"B"/
  ?!;>ol 
   " /"e

基本的には同じことです。登場人物を追い出し、ミラーと矢印を使用してプログラムの流れを指示します。これは印刷しますBirthdayます。

組み合わせた

     /

  ?!;>ol      ?!;>ol 
     /"eduJ yeH" / 

関連する部分は上にあります(途中で多くの行を切り取りました)。を使用して/上向き矢印て、上向きに反射して折り返しますが、下向き矢印が下にあるため、代わりにそのコードの一部が実行されます。次に、関連する文字をスタックにプッシュし、下向き矢印から出力ループを再利用します。

これは印刷されHey Judeます。


5

Python 2、サイズ21

コンソールをクリアし、カーソルを左上に移動するために使用するため、このプログラムにはANSI互換端末(DOS ANSI.SYSが特定のもの)が必要\x1b[2Jです。これを他のANSI端末と互換性があるようにするには、印刷\x1b[1J\x1b[Hがあるようにするには(サイズ21の六角形に収まります)。ANSIエスケープコードを出力する端末がないため、この部分をテストできませんでした。

このプログラムは、放射性シンボル(ASCIIシェーディングは色が後方を意味することを意味します)またはMetroid Prime:Huntersの狙撃武器のアイコンに似た、かなりクールに見えると思います。

それはやったサイズ17でフィット感を、私は忘れてしまったと思いますid=0アップ矢印で。それをすべて縮小することはできないと思います

また、クレジットを使用するアイデアのSp3000に行きますid

          #exec('print"'       ##
         ###'\x1b[2J"+(id '   ####
        #####'and"Hey Ju'    ######
       #######'de"or"Ca'    ########
      #########'tswalk'    ##########
     ###########'")')     ############
    ##############       ##############
   ################     ################
  ##################   ##################
 #################### ####################
id=0;print"Birthday"##id=0;print"Birthday"#
exec('print"'       ##exec('print"'       #
 '\x1b[2J"+(id '   ####'\x1b[2J"+(id '   #
  'and"Hey Ju'    ######'and"Hey Ju'    #
   'de"or"Ca'    ########'de"or"Ca'    #
    'tswalk'    ##########'tswalk'    #
     '")')     ############'")')     #
      #       ###############       #
       #     #################     #
        #   ###################   #
         # ##################### #
          #id=0;print"Birthday"##

上矢印:

          #
         ###
        #####
       #######
      #########
     ###########
    #############
   ###############
  #################
 ###################
id=0;print"Birthday",

下矢印:

exec('print"'       #
 '\x1b[2J"+(id '   #
  'and"Hey Ju'    #
   'de"or"Ca'    #
    'tswalk'    #
     '")')     #
      #       #
       #     #
        #   #
         # #
          #

「Hey Jude」は、私のお気に入りのビートルズの曲の1つですが、それほど多くは知りません。私が使用している他の2曲は聞いたことがない。よく聞くジャンルではありません。


1
1. ANSI.SYSでのみ\x1b[2J動作します。他の端末では何もしません。また、セミコロンの後に整数が必要です。行と列の両方をデフォルトの1にするには、を使用します。2. そして、すべてのANSI端末で動作するはずです。3. Linuxターミナルでは、単にターミナルのリセットに使用できます。4. スコアの改善に役立つ場合は、リテラルのESCバイトに置き換えることができます。\x1b[;H\x1b[H\x1b[1J\x1b[H\x1b[H\x1b[J\x1bc\x1b
デニス

@Dennisそれを片付けてくれてありがとう。上矢印のコードを複数行に分割する方法がわからないため、スコアを改善することはできません。
mbomb007

2

C(gcc)、ベース幅= 17

トップ「Hey Jude」

        s
       ;//
      s;///
     main(//
    ){puts(//
   #define T//
  s?"Michell"//
 "e":"Hey Jud"//
"e");}///////////

オンラインでお試しください!

下、「マッチボックス」

s=1;/////////////
 #ifndef T//////
  main(){puts//
   ("Matchb"//
    "ox");}//
     # endif
      /////
       //\
        ;

オンラインでお試しください!

六角形、「ミシェル」

        ss=1;/////////////s
       ;//#ifndef T//////;//
      s;///main(){puts//s;///
     main(//("Matchb"//main(//
    ){puts(//"ox");}//){puts(//
   #define T//# endif#define T//
  s?"Michell"///////s?"Michell"//
 "e":"Hey Jud"////\"e":"Hey Jud"//
"e");}///////////;"e");}///////////
s=1;/////////////ss=1;/////////////
 #ifndef T//////;//#ifndef T//////
  main(){puts//s;///main(){puts//
   ("Matchb"//main(//("Matchb"//
    "ox");}//){puts(//"ox");}//
     # endif#define T//# endif
      /////s?"Michell"///////
       //\"e":"Hey Jud"////\
        ;"e");}///////////;

オンラインでお試しください!


1

gawk、ベースの長さ15

mawkでは機能しないことがわかりました:/

それほどトリッキーではありませんが、70年代に成長し、ビートルズはまだ放送中ですので、私はこれに答えなければなりませんでした。最初はawkが適していないと思っていましたが、それがきっかけでした。

これらのスクリプトにはBEGINブロックやENDブロックが含まれているため、ENDブロックを実行するための入力がないことを通知する必要があります。これは、起動後にCtrl-Dを押すか、次のように起動することで実現できます。

awk -f script.awk </dev/null

私はより便利だと思います。echo | awk -f script.awkも動作しますが、入力として空の行を使用した場合、これはまったく異なる方法で実行できます。

上向き、No For For Print (Youtubeリンク)

       #
      # #
     #   #
    BEGIN {
   print n?#
  #         #
 n"So Tired":#
n="For No One"}

コメントのない基本的なコードはこれです。以来n定義されていない、単独で呼び出された場合は「For No One」を出力します。

    BEGIN {
   print n?

 n"So Tired":
n="For No One"}

下向き、ブラックバードを印刷

END{a="Blackb"#
 a=n?_:a"ird"#
  printf a  #
   n="I'm "#
    if(a) #
     print
      } #
       #

本質的なコードはこれです。n何も印刷しない前に定義されていた場合。すべてのトラック名の後に改行を使用して素敵な出力を強制しました。それを行う余地があり、コンソールで見た目が良くなったためです。nプロセスで定義されています。それは六角形に必要です。

END{a="Blackb"
 a=n?_:a"ird"
  printf a
   n="I'm "
    if(a)
     print
      }

六角形、私はとても疲れているプリント

       #END{a="Blackb"##
      # #a=n?_:a"ird"## #
     #   #printf a  ##   #
    BEGIN {n="I'm "#BEGIN {
   print n?#if(a) #print n?#
  #         #print#         #
 n"So Tired":#} #n"So Tired":#
n="For No One"}#n="For No One"}
END{a="Blackb"##END{a="Blackb"#
 a=n?_:a"ird"## #a=n?_:a"ird"#
  printf a  ##   #printf a  #
   n="I'm "#BEGIN {n="I'm "#
    if(a) #print n?#if(a) #
     print#         #print
      } #n"So Tired":#} #
       #n="For No One"}#

不可欠なコード。今、ついにその謎nが使用されます。nが最初の行で定義されているため、上向きの三角形は代替出力を印刷し、下向きの三角形は空を印刷します。

    BEGIN {n="I'm "
   print n?

 n"So Tired":
n="For No One"}
END{a="Blackb"
 a=n?_:a"ird"
  printf a  
   n="I'm "
    if(a) 
     print
      } 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.