先週からGoデビューしました。(真面目に)
なぜ始めたのかは「Vuls」がGoでてきているため、ちょんまげさんに…

とインフラはいいからGoくらいできるようになれよと言われ覚醒しました。
(シェルスクリプトとPythonはよく使うけどね!)
他にもVulsをじゃんじゃん広めていきたいし、もっとコミットしたい!という理由でもあります。
最近Vulsのエバンジェリストになりましたw

A Tour of Goをやっていますが、飽きてきたので
そろそろfizzbuzzできるか試してみました。


■Want to do

・1~40まで
・3の倍数はVuls!
・3の付く数字はVulssan!

やりたいこととしてはこんな感じ。(世界のナベアツって名前変わったんだっけ)


■vuls3.go

とりあえずVuls!,Vulssan!は見やすく変数化してあげましょう。(9~10行目)
1~40まではfor文でぶん回します。(12行目)
3の付く数字を判定するにはstringsパッケージを使います(5行目)
ちなみにContainsは()内に文字列があったらtrueを返してくれるので3をぶち込みます。(13行目)
3の倍数はfmtパッケージを使います。(4,15行目)
あとはPrintlnで出力するだけです。

・go run vuls3.go

😄


■おまけ

https://qiita.com/kmagai/items/d6091b6f7bdc721616fc

上記のを改良して使うとかなりバルス感があります。(天空の城ラピュタだね)
この場合は無制限で3の倍数ならVuls!、3の付く数字はVulssan!とカオスな実装となっています。
strconvパッケージを使って文字列と基本データ型の双方向変換を行っています。

・unlimited-vuls3.go

試しに500までrunしてみるとこうなる。

・go run unlimited-vuls3.go

処理はやっ😄


■まとめ

みんなもGo言語やろう!基本大事!
そしてVulsコミットしよう!
上記のプログラムはギッハブに置いとくからみんな試してみてくださいな!

https://github.com/RVIRUS0817/golang_study-plaza/tree/master/fizzbuzz

本3冊買ったからヨム。

参考
http://golang.jp/pkg/strings
http://golang.jp/pkg/fmt
http://golang.jp/pkg/strconv

The following two tabs change content below.

あだちん

1989年生まれ。 Infra Engineer(SRE) In Shibuya 2013年新卒に自宅サーバを構築し、この技術ブログを立ち上げたが、 2017年に電源が壊れConoHaにリプレイスした。 好きな構成管理ツールはAnsible,Terraform。 インフラならAWS/Docker。言語はPython。 WEBサーバならH2O。そして「脆弱性スキャナVuls」のOSS活動もしており、VulsRepo init fileのコミッターでもある。VulsのためにGolangと格闘中でエバンジェリストに任命!?HIPHOPが好きすぎてTrack Makerでもある。
Posted in GoTagged

コメントを残す