クイズに挑戦して、Numpyの配列をもっと知ろう!第2弾です。
今日は配列クイズ第2弾だよ。
どんなことをするのかな。
きなこちゃん、Numpyを使って、1から9の数字を作るプログラムを覚えているかな。
うん。np.arange(1,10)だったよ。
素晴らしい!その通りだよ。きなこちゃん。
そしたら、掛け算の九九はどうやったらプログラムできるか、わかるかな。
えっとね、np.arange(1,10) と np.arange(1,10)をかけるとベクトル演算になってしまうから、
[1×1, 2×2, 3×3, 4×4, 5×5, 6×6, 7×7, 8×8, 9×9]になっちゃうね。
よく気がついたね!きなこちゃん、すごい!!
この場合は、こんな風に書くと、九九の表が完成するよ。
x=np.arange(1,10)
for y in np.arange(1,10):
print(x*y)
[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]
“for … :”って初めて見たよ。
“for … :”の部分は、for loop(フォーループ)と言って、後ろにある配列の中の数字を一つずつ順番に使うという意味だよ。今の例だと、1から9までの数字を順番に使うよ。
なんか、プログラムっぽくなってきたね。
[問題]Numpyの配列2
次のプログラムを実行した時の答えは何でしょう?
x=np.arange(1,3)
for y in np.arange(5,7):
print(x*y)