次のことを行うプログラムを作成しようとしています。
このプログラムでは、たとえば印刷したい
場合に、alpabet の文字をオンラインで印刷i**q % p
します。i
q=2
p=12
1**2 % 12 = 1
2**2 % 12 = 4
3**2 % 12 = 9
4**2 % 12 = 4
5**2 % 12 = 1
...したがって、出力の最初の 5 行は次のようになります。
a
bcde
fghijklmn
opqr
s
私の場合、文字数を求める関数は ですが(i**2)%9
、考え方は同じです。具体的なタスクは次のとおりです。
"1834
行番号 i が文字を使用するように、文字 a ~ z を順番に使用して行を印刷し(i**2 ) % 9
ます。行の印刷に使用される最初の文字1834
は次のとおりです。_________
"
コーディングを始めましたが、主な質問が 2 つあります。まず、「z」(または「25位」)に到達したら、アルファベットを最初からやり直すにはどうすればよいですか?
また、プログラムのために何をすればよいですか? これまでのところ、私は持っています:
letters="abcdefghijklmnopqrstuvwxyz"
for i in range[1,1834]:
x=((i**2)%9)
print(letters[])
…が、進め方がわからない。スライス法をしようと思ったのですが、わかりません。任意の入力をいただければ幸いです。