第57回【Python】指定要素の削除、九九表

現在取り組んでいるのは、paiza ラーニング問題集「配列活用メニュー」になります。

はじめに

猫とキャンプと野球観戦と AWS が大好きな旦那、LeoSaki です。モフモフしたい。

Python をゼロから勉強してみよう、のコーナー 57 回目です。

基本的にコミュ障です。それでも、お客様とお話しなければならない機会が発生します。そういうときは、上手に話している人になりきって(真似して)対応するようにしています。あとは事前準備をどれだけやっておくことができるか、かなぁ。だから、急な打ち合わせは苦手です。

それでは、今日も頑張ってみようと思います。

指定要素の削除

配列 A とその要素数 N と削除する要素の番号 n が与えられるので、A から A_n を削除し、A を要素数 N – 1 の配列とした後の A の各要素を出力してください。


すべてのテストケースにおいて、以下の条件をみたします。

・1 ≦ N ≦ 100
・0 ≦ A_i ≦ 100 (1 ≦ i ≦ N)
・1 ≦ n ≦ N


5
1
2
3
4
5
3

指定の要素を配列から削除。よくあるパターン。

Python
N = int(input())
A = [int(input()) for _ in range(N)]
n = int(input())
A.pop(n - 1)
print(*A,sep="\n")
VBA
N = Cells(1, 1)
Dim A() As Integer
ReDim A(N - 1)
For i = 0 To N - 1
    A(i) = Cells(i + 2, 1)
Next
p = Cells(N + 2, 1)
For i = p - 1 To UBound(A) - 1
    A(i) = A(i + 1)
Next
ReDim Preserve A(UBound(A) - 1)
For Each v In A
    Debug.Print v
Next

インデックスがごちゃごちゃになりそう・・・。

九九表

期待する出力にあるような、九九表を出力してください。

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

九九表って、結構初心者頃に出力させられること多くない? いろんな言語で書いたことがある気がする。

Python
for i in range(1,10):
    for j in range(1,10):
        print(i*j,end=" ")
    print()
VBA
For i = 1 To 9
    For j = 1 To 9
        Debug.Print i * j;
    Next
    Debug.Print
Next

最後に

いつの時代も九九表。小学 2 年生のときに覚えたアレは、永遠つきまとう。LeoSaki(旦那)は覚えるの早かったですけどね。れんちょんには勝てないけれど。

VBA で配列操作するのはめんどくさいなぁというのが感想。いざとなったらワークシートでえいやでやってしまえちゃうから。

引き続き、よろしくお願いいたします!

Python学習,Python,paiza

Posted by LeoSaki