開発環境
- macOS Mojave - Apple (OS)
- Emacs (Text Editor)
- Windows 10 Pro (OS)
- Visual Studio Code (Text Editor)
- Go (プログラミング言語)
プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES) (Alan A.A. Donovan(著)、Brian W. Kernighan(著)、柴田 芳樹(翻訳)、丸善出版)の第3章(基本データ型)、3.3(文字列)、3.5.4(文字列とバイトスライス)、練習問題3.10の解答を求めてみる。
コード
package main import ( "bytes" "fmt" ) func main() { intStrs := []string{"1", "12", "123", "1234", "12345", "123456789", "1234567890"} for _, s := range intStrs { fmt.Println(comma(s)) } } func comma(s string) string { var buf bytes.Buffer n := len(s) start := false for i, c := range s { if !start { buf.WriteRune(c) start = true } else { if (n-i)%3 == 0 { fmt.Fprintf(&buf, ",%c", c) } else { buf.WriteRune(c) } } } return buf.String() }
入出力結果(cmd(コマンドプロンプト)、Terminal)
C:\Users\...>go run sample10.go 1 12 123 1,234 12,345 123,456,789 1,234,567,890 C:\Users\...>
0 コメント:
コメントを投稿