
「A Tour of Go をやる!」シリーズの第19回。
今回もプログラミングの制御文ということでループ。前回に引き続いてForに関係する内容です。
今回進めるページは「For continued」
「A Tour of Go」の該当ページはこちら。
A Tour of Go
ページで説明されていること
タイトルが???でしたが、前回のForの続きですよ~、って意味ですかね…たぶん。
で、ページ内の説明を私なりに解釈すると、…といっても一文のみだから改めて書くほどじゃないですけど…まぁそれでも一応書いてみますと…、、、前回Forに渡せる3つの式として[初期化ステートメント]、 [条件式]、[後処理ステートメント] があると学習しましたが、この内、[初期化ステートメント]と[後処理ステートメント]は無くても問題ない、と書かれていました。
つまり…
Forで指定できる3種類の式
これ前回書いたものですが、ここに今回の内容を追記します。
式の種類 | 説明 |
---|---|
[初期化ステートメント] | ループ内だけで利用できる変数の宣言と初期化を行う。 初期化はループに入る直前に一度きり。 この記述は任意なので、不要であれば書かなくても良い。 |
[条件式] | ループするたび処理の開始前に式が評価され、評価の結果が false ならループ終了。 この記述は必須。 |
[後処理ステートメント] | ループするたび処理の最後(繰り返す直前)に実行される。 この記述は任意なので、不要であれば書かなくても良い。 |
サンプルプログラムを見る
実際に式を省略した場合の書き方はサンプルプログラムで確認します。
Go
package main
import "fmt"
func main() {
sum := 1
sum2 := 1
// [条件]のみ指定
for ; sum < 1000; {
sum += sum
}
/*
サンプルプログラムではセミコロンを残しているが
無くても同様に動く
*/
for sum2 < 1000 {
sum2 += sum2
}
// 結果を出力
fmt.Println(sum)
fmt.Println(sum2)
}
Expand
処理の内容は…
1+1, 2+2, 4+4, 8+8、といった感じで、2^n な計算を順に行い、結果が1000を超えたら終了するプログラム。
さいごに
今回の内容は、Forに与えることができる式のうち、[初期化ステートメント]と[後処理ステートメント]を省略できることと、その書き方でした。
なんというか、前回の内容に少し補足した程度でしたのでめちゃくちゃ軽い内容でしたが、今回はこれでおしまい。
それではまた次回~٩(-ω-´)و
コメント