0

学校で、パスカルでマーキー テキストをプログラミングするタスクがあったことを覚えています。これは、左から右に移動するテキストです。また、これを行う方法がまったくわからなかったことも覚えています。今日、私はまだ優れたプログラマーではありません。あなたならどうやってそれを行うのか、もちろんライブラリを一切使わずに、どうやって行うのかを皆さんに尋ねたかったのです。

配列値に任意の文字を入れてから、たとえば毎秒、配列値を1つ右に移動するか何かを考えました。それが良い「アルゴリズム」かどうかはわかりません。

皆さんはどう思いますか?

4

2 に答える 2

1

たとえば、Pythonでは次のようにします:

>>> L='ABCDEFGH'
>>> l=len(L)
>>> i=0
>>> while(i<20):
    print L[i%l:]+L[:i%l]
    i+=1

開始文字を左から右に移動するだけで (文字数を考慮しているため、モジュロ (%) を使用します)、文字列の残りの部分を反対側に移動します。

そしてあなたは得るでしょう:

ABCDEFGH
BCDEFGHA
CDEFGHAB
DEFGHABC
EFGHABCD
FGHABCDE
GHABCDEF
HABCDEFG
ABCDEFGH
BCDEFGHA
CDEFGHAB
...

あなたの問題を理解していただければ幸いです。

于 2011-09-13T08:19:24.150 に答える