Go 言語で「基礎プログラミング演習 I 〜100 本ノック中級編」を解いてみる-No.49「九九」
はじめに
「基礎プログラミング演習 I 〜100 本ノック中級編」を解いてみます。
取り扱う問題は以下のサイトを引用させていただきました。
検証環境
$ uname -moi
x86_64 unknown GNU/Linux
$ head -n 2 /etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
$ go version | head -n 1
go version go1.16.3 linux/amd64
問題
No. 49 九九
九九の表を、2 重の繰り返しを使って表示するプログラムを作成せよ。2 重の繰り返しを使わず単に表示するだけではダメ。値の間はタブ(\t)を使って間をあけること。
# 【実行例】
$ ./knock49
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
回答
knock49.go
package main
import (
"fmt"
"strconv"
"strings"
)
func main() {
nums := make([]string, 9)
for i := 0; i < 9; i++ {
for j := 0; j < 9; j++ {
nums[j] = strconv.Itoa((i + 1) * (j + 1))
}
fmt.Println(strings.Join(nums, "\t"))
}
}
実行
$ go run knock49.go
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
ひとこと
やはり C/C++/Java/C# といった言語の流れを組んでいるようですね。タブ文字の出力が同じ方法で実現できました。
ディスカッション
コメント一覧
まだ、コメントがありません