0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Pythonで九九の表を累積和を用いて作成する

Posted at

アルゴリズム力を高めたくて以下の本で勉強していたところ, 累積和について学びました.

累積和は今まで使ったことがなかったので, 練習もかねてPythonで九九の表を作ってみました.

ソースコード

九九の表を累積和を用いて作成する
# 実行部分
if __name__ == '__main__':
  X = [i for i in range(1, 10)]
  
  Z = [[ 0 ]*(10) for i in range(10)]
  
  # 縦方向の累積和を計算
  for j in range(1, 10):
    for i in range(1, 10):
      Z[i][j] = Z[i-1][j] + X[j-1]
  
  # 九九の表の出力
  for i in range(1, 10):
    output = Z[i][1:10]
    for j in range(len(output)):
      if j < 9:
        print(f'{output[j]:>4}', end="")
      else:
        print(f'{output[j]:>4}')
    print() 

Xは1から10までのリストで, Zは累積和を計算したものを格納する行列にしています. その後, 縦方向の累積和を計算してZの値を変えていくことで九九を計算しています.
最後の出力部分は少し綺麗に見せるために桁を揃えたりしていますが, 単に出力するだけだったら

for i in range(1, 10):
    output = Z[i][1:10]
    print(*output)

でできます.

出力

   1   2   3   4   5   6   7   8   9
   2   4   6   8  10  12  14  16  18
   3   6   9  12  15  18  21  24  27
   4   8  12  16  20  24  28  32  36
   5  10  15  20  25  30  35  40  45
   6  12  18  24  30  36  42  48  54
   7  14  21  28  35  42  49  56  63
   8  16  24  32  40  48  56  64  72
   9  18  27  36  45  54  63  72  81
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?