LINEで送る
Pocket

先週から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

LINEで送る
Pocket

カテゴリー: Go

あだちん

1989年生まれ。 ランサーズ/SRE。 ホスティングから大規模なアドテクなどのインフラエンジニアとして携わり、他社インフラレスポンス改善、ランサーズでの副業、ansibleでのインフラコード化を推進し、未経験によるエンジニアのMENTAなども実施している。また、「脆弱性スキャナVuls」のOSS活動もしており、自称エバンジェリスト/広報/VulsRepo init file,chatwork通知のコントリビュータでもある。現在はDocker開発環境の提供,AWSで新サービスのインフラ構築,PHPバージョンアップ,分析基盤を担当しておりDigdag,embulk,BigQueryを使いこなし中。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください