0
0

二次元配列の入力 2 Python3編

Last updated at Posted at 2023-12-05

入力したとおりに出力する問題。
今までやった復習で、アンパックの方法を使って。

M = int(input())
for _ in range(5):
    A = map(int,input().split())
    print(*A)

アンパックを使わない方法だと

M = int(input())
#配列作成
A = [[0] * M for _ in range(5)]
#配列に入力データを入れる
for i in range(5):
    #別に単次元の配列を作成してそれに1行のデータを入れる
    values = input().split()
    #用意した配列に単次元の配列の要素ごとに格納していく
    for j in range(M):
        A[i][j] = int(values[j])

#配列から出力
for i in range(5):
    for j in range(M):
        print(A[i][j], end="")

        if j < M - 1:
            print(end=" ")
        else:
            print()

多次元配列への要素の入れ方として前半のコードは
覚えておきたいところ。

たとえばN行M列の配列を出力させるとすると
こういう風に公式みたいにできる。

N,M = map(int,input().split())
A = [[0] * M for _ in range(N)]

for i in range(N):
    values = input().split()
    for j in range(len(values)):
        A[i][j] = int(values[j])
        
for i in range(N):
    for j in range(M):
        print(A[i][j], end="")
        if j < M-1:
            print(end=" ")
        else:
            print()

ただ、このときに、i行目、j列目の数を出力となると

if i == K - 1 and j == L - 1:
    print(A[i][j]

というふうに−1しないといけない点に注意。

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