プログラムを順次にしてください![閉まっている]


8

あなたがそれを受け入れることを選択した場合、あなたの仕事は簡単です。

目的

実行時に、選択したシーケンスでいくつかの(必要なだけ)用語を出力するプログラムを作成する必要があります。シーケンスは有効なOEISシーケンスである必要があります。ツイストは、シーケンスを構成するコードから文字を取り出し、それらを文字列化し、同じ言語で実行すると、シーケンスのn 番目の式を取得する必要があるということです。

私がこのプログラムを作ったとしましょう:

abcdefghij

正方形のシーケンスを選択しました:http : //oeis.org/A000290

シーケンスの最初の5項を出力するように選択した場合、出力は次のようになります。

1, 4, 9, 16, 25

注:出力は柔軟です。用語を区切るデリミタを選択できますが、シーケンスの各用語を区別できるように、デリミタが目立つ必要があります。

これで、インデックス1の文字はになりaます。インデックス4の文字はdです。インデックス9の文字はiです。だから私の新しいプログラムは:

adi

そして、それは私のシーケンスのn 番目の項の式を印刷する必要があります、それは:

n^2

シンプル!

他のもの

  • 少なくとも5つの用語を印刷する必要があります。
  • 0または1のインデックスを選択できます。
  • 繰り返される数字は、繰り返される文字を意味します。
  • シーケンスが順不同(たとえば、逆方向)の場合でも、コードはそれに従います(たとえば、コードが逆方向に書かれています)。
  • すでに範囲外になっている場合でも、回答の範囲内の数値を使用する必要があります。印刷しなかった同じシーケンスからの番号は使用できません。
  • シーケンスに公式がない場合は、OEIS Webサイトに記載されている名前の最初の3文字を使用できます(たとえば、フィボナッチシーケンスが印刷さfibれ、ルーカスレーマーシーケンスが印刷されますluc)。

これがであることを覚えておいてください。したがって、バイト単位の最短の回答が優先されます。


コメントは詳細な議論のためのものではありません。この会話はチャットに移動しました
マーティンエンダー2016年

変数名はn
ETHproductions 2016年

チャレンジに関する詳細がいくつか整理されるまで、これを保留します(上記のリンクのチャットルームを参照)。
マーティンエンダー2016年

5
すでに再開票を投じている人々に。場合は1つの答えは想定していますが、可能なシーケンスから多くの値としてとるべきであるとし、別の答えは想定していますが、完全なプログラムで印刷されたてきたように、あなただけの多くとして取ること、そして挑戦は不明であるとさえ追加する前に改善する必要がありますより多くの答え。さらに、これはまだ対処されていない唯一のエッジケースではありません(増加しないシーケンス、または繰り返される値を持つシーケンスはどのように処理する必要がありますか?)。
マーティンエンダー2016年

私はこの挑戦が大好きですが、最も複雑な式を誰が使用できるかを見極めるコンテストです。
マジックタコの骨壷

回答:


3

05AB1E、10バイト、A008585

このコードは、シーケンス3nの最初の11要素を出力します。

3TÝ' §n*»J

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

説明

3            # push 3
             # STACK: 3
 TÝ          # push range [0 ... 10]
             # STACK: 3, [0,1,2,3,4,5,6,7,8,9,10]
   ' §       # push a space char converted to string
             # STACK: 3, [0,1,2,3,4,5,6,7,8,9,10], " "
      n      # square the string
             # STACK: 3, [0,1,2,3,4,5,6,7,8,9,10]
       *     # multiply the top 2 elements of the stack
             # STACK: [0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30]
        »    # join by newlines
         J   # join to string

n番目ごとの項目(0インデックス)を取ると、次のようになります。

3'nJ

3nを出力します


5

Python 2、35バイト

次のコードを実行すると、基本的に式が含まれる明白なシーケンスA000027を使用することにしましたn

#print'n'
n=1
exec'print n;n+=1;'*8

あなたは出力を取得します:

1
2
3
4
5
6
7
8

そして、私のソースコードから8文字(0インデックス付き)を取得すると、次のようになります。

print'n'

これは単に印刷しnます。


あなたがよりエキサイティングな答えを望んでいたなら、ここにPython 2ソリューションn^2、すなわちA000290があります:

#p  r    i      n        t          '            n              ^                2                  '
n=1
exec'print n*n;n+=1;'*10

4

05AB1E、7 6バイト、A000027

5L'n s

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

説明:

5L      # Push [1, 2, 3, 4, 5]
  'n    # Push "n"
        # Do nothing
     s  # Swap (only in original program)
        # Implicit print

4L"n"sオプションでもありますか、それともここから外れますか?
マジックタコの骨壷

はい、そうです。しかし、それがそうである必要はあり5ません4
Oliver Ni

「そして、私はそれをシーケンスの最初の5つの用語を印刷するために選択しました」-OP
Magic Octopus Urn '23

1
@carusocomputing一番下を見てください
Oliver Ni


2

05AB1E30 28バイト、A000290

これは正方形のシーケンスです

"  n    ^      2        "5Ln

式を使用して、シーケンスの最初の5項を出力しn^2ます。

[1, 4, 9, 16, 25]

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

これは1インデックスです。したがって、シーケンスを構成するコードから文字を取得すると、

"n^2"

どの出力

n^2

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

説明

"  n    ^      2        "              # push this string
                         5             # push 5
                          L            # push range [1, ..., 5]
                            n          # square it
                                       # implicit output

1

ワンダー、16バイトA005843

 0";2"tk 5gen *2

これは以前はDASHでしたが、現在はWonderに名前が変更されています。

最初の6つの偶数を出力します。先頭のスペースに注意してください。インデックス0、2、4、6、および8を維持すると、次のようになります。

 "2t 

どのプリント2t

説明

0";2"

これは単なる文字列と数値です。

tk 5gen *2

これにより、0から始まる偶数の無限リストが生成され、そのリストから最初の5アイテムが取得されます。



1

オクターブ、49バイト、A109234

@()  1      :      5     %'floor (n*sin h(1)) ';]

シーケンスfloor(n*sinh(1))は、それ以降のすべての番号です1。ただし6, 13, 20, 26, 33, 40, 46, _3, _0, _6 ...、作成に使用される文字1 2 3 4 5は、これらの位置に配置する必要があります。残りの位置は、機能を説明する文字列に使用されます。



0

Haystack21 10 9バイト

Haystackには、過去数日間に多くの新機能が追加されています:)もちろん、私はA000027を使用します。ここに初期プログラムがあります:

<"n"o|OR4

これは印刷されます:

[1, 2, 3, 4, 5]

そして、1から5の文字を0インデックスで取得すると、次のようになります。

"n"o|

どのプリントn


もっと楽しみたい場合は、A000290のソリューションを次に示します。

^"_(n\D2l^
3keU02/:[W
D5m"5s\ih_
Cr:OF]uAIe
hWd>g|AkuH
/6R>ud*O,\
)G:q$n|4y{
:|v\X:?dP/

必要な文字だけを表示したい場合は、ここをクリックしてください

これにより、最初の7つの正方形が出力され、上記のプログラムで対応する0インデックス付きの文字は次のようになります。

"n^2"O|

どのプリントn^2

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.